Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Ensure that lfields[] is fully initialized.
authorArnaud Giersch <arnaud.giersch@iut-bm.univ-fcomte.fr>
Tue, 22 May 2012 11:58:37 +0000 (13:58 +0200)
committerArnaud Giersch <arnaud.giersch@iut-bm.univ-fcomte.fr>
Tue, 22 May 2012 12:11:24 +0000 (14:11 +0200)
Fixes compilation error:

In file included from .../src/xbt/mmalloc/mm.c:24:0:
.../src/xbt/mmalloc/mm_diff.c: In function ‘get_addr_memory_map’:
.../src/xbt/mmalloc/mm_diff.c:373:9: error: ‘lfields[5]’ may be used uninitialized in this function [-Werror=uninitialized]
cc1: all warnings being treated as errors

In fact, once strtok returns NULL, subsequent searches with the same parameters
return NULL too.

src/xbt/mmalloc/mm_diff.c

index c8bc05a..a2e29b6 100644 (file)
@@ -353,7 +353,7 @@ const char* get_addr_memory_map(void *addr, void* s_heap, void* r_heap){
 
     lfields[0] = strtok(line, " ");
 
 
     lfields[0] = strtok(line, " ");
 
-    for (i = 1; i < 6 && lfields[i - 1] != NULL; i++) {
+    for (i = 1; i < 6; i++) {
       lfields[i] = strtok(NULL, " ");
     }
 
       lfields[i] = strtok(NULL, " ");
     }