diff options
Diffstat (limited to 'util/szap/azap.c')
-rw-r--r-- | util/szap/azap.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/util/szap/azap.c b/util/szap/azap.c index 14a1c6a..5bd7f33 100644 --- a/util/szap/azap.c +++ b/util/szap/azap.c @@ -103,7 +103,10 @@ int parse_int(int fd, int *val) return -3; /* to fit in 32 bit */ }; + errno = 0; *val = strtol(number, NULL, 10); + if (errno == ERANGE) + return -4; return 0; } @@ -189,9 +192,9 @@ int parse(const char *fname, const char *channel, if ((err = try_parse_param(fd, modulation_list, LIST_SIZE(modulation_list), - (int *) &frontend->u.vsb.modulation, - "modulation"))) + &tmp, "modulation"))) return -4; + frontend->u.vsb.modulation = tmp; if ((err = try_parse_int(fd, vpid, "Video PID"))) return -5; @@ -389,4 +392,3 @@ int main(int argc, char **argv) return 0; } - |