diff options
author | Jonathan McCrohan <jmccrohan@gmail.com> | 2012-01-10 17:38:54 +0000 |
---|---|---|
committer | Jonathan McCrohan <jmccrohan@gmail.com> | 2012-01-10 17:38:54 +0000 |
commit | 94dc9792a9f636771ea1388f395ca89a2d07c74b (patch) | |
tree | bdbb2ba55ba54f60ee6dbce5ffa2599790fc036d | |
parent | fef836a534ace8c5bcf0c473d6c5435d0aaa5452 (diff) | |
download | verteco-94dc9792a9f636771ea1388f395ca89a2d07c74b.tar.gz |
Handle 32bit signed overflow.
-rw-r--r-- | src/modbuslog.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/modbuslog.c b/src/modbuslog.c index e7ccb05..1e849bb 100644 --- a/src/modbuslog.c +++ b/src/modbuslog.c @@ -309,7 +309,12 @@ int main(int argc, char *argv[]) { int intervalid; FILE *intervalfile = fopen("/var/modbuslog/interval/interval.txt", "r+"); fscanf(intervalfile, "%d", &intervalid); - intervalid++; + //handle 32bit signed overflow + if(intervalid==2147483647){ + intervalid=0; + }else{ + intervalid++; + } rewind(intervalfile); fprintf(intervalfile, "%d", intervalid); fclose(intervalfile); |