[trunk] fixed return value for compare_raw_files (fixes issue 453)
authorMatthieu Darbois <mayeut@users.noreply.github.com>
Sat, 20 Dec 2014 12:42:40 +0000 (12:42 +0000)
committerMatthieu Darbois <mayeut@users.noreply.github.com>
Sat, 20 Dec 2014 12:42:40 +0000 (12:42 +0000)
tests/compare_raw_files.c

index e7ab8c94167cb12a3f9a6d24c4bac982c5579b72..01b2122dc6d55bf6c2018e233d66216dacc8bb09 100644 (file)
@@ -120,14 +120,14 @@ int main(int argc, char **argv)
   int pos = 0;
   test_cmp_parameters inParam;
   FILE *file_test=NULL, *file_base=NULL;
-  unsigned char equal = 1;
+  unsigned char equal = 0U; /* returns error by default */
 
   /* Get parameters from command line*/
   if (parse_cmdline_cmp(argc, argv, &inParam))
-    {
+  {
     compare_raw_files_help_display();
     goto cleanup;
-    }
+  }
 
   file_test = fopen(inParam.test_filename, "rb");
   if (!file_test) {
@@ -142,8 +142,9 @@ int main(int argc, char **argv)
   }
 
   /* Read simultaneously the two files*/
+  equal = 1U;
   while (equal)
-    {
+  {
     unsigned char value_test = 0;
     unsigned char eof_test = 0;
     unsigned char value_base = 0;
@@ -165,19 +166,19 @@ int main(int argc, char **argv)
 
     /* End of file reached only by one file?*/
     if (eof_test || eof_base)
-      {
+    {
       fprintf(stdout,"Files have different sizes.\n");
       equal = 0;
-      }
+    }
 
     /* Binary values are equal?*/
     if (value_test != value_base)
-      {
+    {
       fprintf(stdout,"Binary values read in the file are different %x vs %x at position %d.\n", value_test, value_base, pos);
       equal = 0;
-      }
-    pos++;
     }
+    pos++;
+  }
 
   if(equal) fprintf(stdout,"---- TEST SUCCEED: Files are equal ----\n");
 cleanup: