diff options
author | Paul Eggert <[email protected]> | 2011-06-17 00:52:35 -0700 |
---|---|---|
committer | Paul Eggert <[email protected]> | 2011-06-17 00:52:35 -0700 |
commit | c20998a717f64aa6ab563f727f9eca52ab969624 (patch) | |
tree | cb0bfa2ca6511649fbd8d85d4890a13ae2cbb2b8 /src/buffer.c | |
parent | 8961a454e148b61750f5ef38f8047fa660941888 (diff) |
* buffer.c (compare_overlays, cmp_for_strings): Avoid subtraction overflow.
Diffstat (limited to 'src/buffer.c')
-rw-r--r-- | src/buffer.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/buffer.c b/src/buffer.c index 898b457245..4487de1450 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -2858,11 +2858,11 @@ compare_overlays (const void *v1, const void *v2) const struct sortvec *s1 = (const struct sortvec *) v1; const struct sortvec *s2 = (const struct sortvec *) v2; if (s1->priority != s2->priority) - return s1->priority - s2->priority; + return s1->priority < s2->priority ? -1 : 1; if (s1->beg != s2->beg) - return s1->beg - s2->beg; + return s1->beg < s2->beg ? -1 : 1; if (s1->end != s2->end) - return s2->end - s1->end; + return s2->end < s1->end ? -1 : 1; return 0; } @@ -2955,9 +2955,9 @@ cmp_for_strings (const void *as1, const void *as2) struct sortstr *s1 = (struct sortstr *)as1; struct sortstr *s2 = (struct sortstr *)as2; if (s1->size != s2->size) - return s2->size - s1->size; + return s2->size < s1->size ? -1 : 1; if (s1->priority != s2->priority) - return s1->priority - s2->priority; + return s1->priority < s2->priority ? -1 : 1; return 0; } |