integers can be negative ... fixed the test for this in rrd_update -- rians cc usu edu
authoroetiker <oetiker@a5681a0c-68f1-0310-ab6d-d61299d08faa>
Sat, 10 Mar 2007 17:36:32 +0000 (17:36 +0000)
committeroetiker <oetiker@a5681a0c-68f1-0310-ab6d-d61299d08faa>
Sat, 10 Mar 2007 17:36:32 +0000 (17:36 +0000)
git-svn-id: svn://svn.oetiker.ch/rrdtool/branches/1.2/program@1013 a5681a0c-68f1-0310-ab6d-d61299d08faa

src/rrd_update.c

index cca6e52..0143e9e 100644 (file)
@@ -615,7 +615,7 @@ _rrd_update(char *filename, char *tmplt, int argc, char **argv,
                case DST_DERIVE:
                    if(rrd.pdp_prep[i].last_ds[0] != 'U'){
                       for(ii=0;updvals[i+1][ii] != '\0';ii++){
-                            if(updvals[i+1][ii] < '0' || updvals[i+1][ii] > '9' || (ii==0 && updvals[i+1][ii] == '-')){
+                            if((updvals[i+1][ii] < '0' || updvals[i+1][ii] > '9') && (ii != 0 && updvals[i+1][ii] != '-')){
                                  rrd_set_error("not a simple integer: '%s'",updvals[i+1]);
                                  break;
                             }