diff options
author | Max Kellermann <max@duempel.org> | 2010-02-17 07:07:00 +0100 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2010-02-17 07:07:00 +0100 |
commit | c05e6a1275621421eb0a7c3112b0401fa458841e (patch) | |
tree | f4fc40e299335245977a9ee4b82f269bbb96b8b8 /src | |
parent | b21e4d9a589c02bffed9a1793d9fc2dc52044c12 (diff) |
replay_gain_info: use INFINITY to mark undefined values
The previous patch not only moved code, it also changed the check.
Negative gain values seem to be valid after all, there just was the
"magic" value 0.0 which means "not available". This patch changes the
"magic" value to "INFINITY", and uses the C99 function isinf() to
check. It might have been a better idea to use "NAN", but the "NAN"
macro is a GNU extension.
Diffstat (limited to 'src')
-rw-r--r-- | src/replay_gain_info.c | 3 | ||||
-rw-r--r-- | src/replay_gain_info.h | 3 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/replay_gain_info.c b/src/replay_gain_info.c index ce9d8495..33e29e8e 100644 --- a/src/replay_gain_info.c +++ b/src/replay_gain_info.c @@ -21,7 +21,6 @@ #include "replay_gain_info.h" #include <glib.h> -#include <math.h> struct replay_gain_info * replay_gain_info_new(void) @@ -29,7 +28,7 @@ replay_gain_info_new(void) struct replay_gain_info *ret = g_new(struct replay_gain_info, 1); for (unsigned i = 0; i < G_N_ELEMENTS(ret->tuples); ++i) { - ret->tuples[i].gain = 0.0; + ret->tuples[i].gain = INFINITY; ret->tuples[i].peak = 0.0; } diff --git a/src/replay_gain_info.h b/src/replay_gain_info.h index 9fcae22a..2465a250 100644 --- a/src/replay_gain_info.h +++ b/src/replay_gain_info.h @@ -23,6 +23,7 @@ #include "check.h" #include <stdbool.h> +#include <math.h> enum replay_gain_mode { REPLAY_GAIN_OFF = -1, @@ -54,7 +55,7 @@ replay_gain_info_free(struct replay_gain_info *info); static inline bool replay_gain_tuple_defined(const struct replay_gain_tuple *tuple) { - return tuple->gain > 0.0; + return !isinf(tuple->gain); } float |