aboutsummaryrefslogtreecommitdiff
path: root/src/prefsparser.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/prefsparser.cc')
-rw-r--r--src/prefsparser.cc13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/prefsparser.cc b/src/prefsparser.cc
index b5ab1b17..dd4e2ac3 100644
--- a/src/prefsparser.cc
+++ b/src/prefsparser.cc
@@ -18,7 +18,7 @@
#include <sys/types.h>
#include <stdlib.h>
#include <locale.h> /* for setlocale */
-#include <math.h> /* for isinf */
+#include <math.h> /* for HUGE_VAL */
#include <limits.h>
#include "prefs.h"
@@ -112,12 +112,11 @@ static int parseOption(char *name, char *value,
case PREFS_FRACTION_100:
{
double d = strtod (value, NULL);
- if (isinf(d)) {
- if (d > 0)
- *(int*)node->pref = INT_MAX;
- else
- *(int*)node->pref = INT_MIN;
- } else
+ if (d == HUGE_VAL)
+ *(int*)node->pref = INT_MAX;
+ else if (d == -HUGE_VAL)
+ *(int*)node->pref = INT_MIN;
+ else
*(int*)node->pref = 100 * d;
}
break;