Sometimes, the heap is not found by the MC :
* the MC expects the heap to be anonymous/unlabelled in
/proc/self/maps;
* the heap may be labelled as as [stack:$tid] in /proc/self/maps at
some instants of the execution of the program because the tasks
stacks are allocated on the heap.
}
tok = strtok(lfields[0], "-");
start_addr1 = (void *)strtoul(tok, NULL, 16);
}
tok = strtok(lfields[0], "-");
start_addr1 = (void *)strtoul(tok, NULL, 16);
- if(lfields[1][1] == 'w' && lfields[5] == NULL){
+ if(lfields[1][1] == 'w'){
if(start_addr1 == std_heap){ /* Std_heap ? */
tok = strtok(NULL, "-");
end_addr = (void *)strtoul(tok, NULL, 16);
if(start_addr1 == std_heap){ /* Std_heap ? */
tok = strtok(NULL, "-");
end_addr = (void *)strtoul(tok, NULL, 16);