ranges: an empty range is not a whole range
authorDan Carpenter <dan.carpenter@oracle.com>
Wed, 17 Apr 2013 08:34:56 +0000 (17 11:34 +0300)
committerDan Carpenter <dan.carpenter@oracle.com>
Wed, 17 Apr 2013 08:34:56 +0000 (17 11:34 +0300)
In the original code the reason I treated an empty range like a whole range
was because I thought it was an impossible condition so it meant the value
could be anything.

But it turns out there are valid reasons to have an empty range.  For
example, in param_filter an empty range means none of the original values
are preserved.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
smatch_ranges.c

index d2a7024..ecf08fa 100644 (file)
@@ -140,7 +140,7 @@ int is_whole_rl(struct range_list *rl)
        struct data_range *drange;
 
        if (ptr_list_empty(rl))
-               return 1;
+               return 0;
        drange = first_ptr_list((struct ptr_list *)rl);
        if (sval_is_min(drange->min) && sval_is_max(drange->max))
                return 1;