Eliminate 'possible integer underflow' code defect (cord-de)
authorIvan Maidanski <ivmai@mail.ru>
Thu, 27 Oct 2016 21:58:21 +0000 (00:58 +0300)
committerIvan Maidanski <ivmai@mail.ru>
Fri, 28 Oct 2016 07:01:28 +0000 (10:01 +0300)
* cord/tests/de.c (generic_init): Replace initial==CORD_EMPTY check
with 0==len where len is CORD_len(initial) (to outline that len-1
cannot cause underflow).

cord/tests/de.c

index 096e766..bb902de 100644 (file)
@@ -552,9 +552,11 @@ void generic_init(void)
     if ((f = fopen(arg_file_name, "rb")) == NULL) {
         initial = "\n";
     } else {
+        size_t len;
+
         initial = CORD_from_file(f);
-        if (initial == CORD_EMPTY
-            || CORD_fetch(initial, CORD_len(initial)-1) != '\n') {
+        len = CORD_len(initial);
+        if (0 == len || CORD_fetch(initial, len - 1) != '\n') {
             initial = CORD_cat(initial, "\n");
         }
     }