aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormichael <michael@3ae390bd-cb1e-0410-b409-cd5a39f66f1f>2007-01-20 06:58:56 +0000
committermichael <michael@3ae390bd-cb1e-0410-b409-cd5a39f66f1f>2007-01-20 06:58:56 +0000
commit38b070776b2e3270e3cf6d353913429e3b11cbc9 (patch)
tree96c8c1e7e4d6bea4febab8f764f92c27e8ed036c
parentceb6fc010ee9f4fadbcbf3e3cdc481ec505cdc32 (diff)
downloadlcd4linux-38b070776b2e3270e3cf6d353913429e3b11cbc9.tar.gz
minor fixes to evaluator
git-svn-id: https://ssl.bulix.org/svn/lcd4linux/trunk@750 3ae390bd-cb1e-0410-b409-cd5a39f66f1f
-rw-r--r--cfg.c4
-rw-r--r--evaluator.c8
2 files changed, 10 insertions, 2 deletions
diff --git a/cfg.c b/cfg.c
index 6635911..c3c8338 100644
--- a/cfg.c
+++ b/cfg.c
@@ -413,13 +413,13 @@ int cfg_number(const char *section, const char *key, const int defval, const int
DelResult(&result);
if (*value < min) {
- error("bad '%s' value '%d' in %s, minimum is %d", key, *value, cfg_source(), min);
+ error("bad '%s.%s' value '%d' in %s, minimum is %d", section, key, *value, cfg_source(), min);
*value = min;
return -1;
}
if (max > min && max != -1 && *value > max) {
- error("bad '%s' value '%d' in %s, maximum is %d", key, *value, cfg_source(), max);
+ error("bad '%s.%s' value '%d' in %s, maximum is %d", section, key, *value, cfg_source(), max);
*value = max;
return -1;
}
diff --git a/evaluator.c b/evaluator.c
index c4c46a5..e2b103f 100644
--- a/evaluator.c
+++ b/evaluator.c
@@ -310,6 +310,10 @@ double R2N(RESULT * result)
return 0.0;
}
+ if (result->type == 0) {
+ return 0.0;
+ }
+
if (result->type & R_NUMBER) {
return result->number;
}
@@ -332,6 +336,10 @@ char *R2S(RESULT * result)
return NULL;
}
+ if (result->type == 0) {
+ return NULL;
+ }
+
if (result->type & R_STRING) {
return result->string;
}