adjusted to work with the modified fopen() line and the new calloc line

This commit is contained in:
Daniel Stenberg 2004-02-26 14:53:17 +00:00
parent 07de0ff0ff
commit 9b6350d0b0
1 changed files with 31 additions and 5 deletions

View File

@ -115,7 +115,7 @@ while(<FILE>) {
if($sizeataddr{$addr}>0) { if($sizeataddr{$addr}>0) {
# this means weeeeeirdo # this means weeeeeirdo
print "Fucked up debug compile, rebuild curl now\n"; print "Mixed debug compile, rebuild curl now\n";
} }
$sizeataddr{$addr}=$size; $sizeataddr{$addr}=$size;
@ -131,6 +131,31 @@ while(<FILE>) {
$getmem{$addr}="$source:$linenum"; $getmem{$addr}="$source:$linenum";
} }
elsif($function =~ /calloc\((\d*),(\d*)\) = 0x([0-9a-f]*)/) {
$size = $1*$2;
$addr = $3;
$arg1 = $1;
$arg2 = $2;
if($sizeataddr{$addr}>0) {
# this means weeeeeirdo
print "Mixed debug compile, rebuild curl now\n";
}
$sizeataddr{$addr}=$size;
$totalmem += $size;
if($trace) {
print "CALLOC: calloc($arg1,$arg2) at $source:$linenum",
" makes totally $totalmem bytes\n";
}
newtotal($totalmem);
$callocs++;
$getmem{$addr}="$source:$linenum";
}
elsif($function =~ /realloc\(0x([0-9a-f]*), (\d*)\) = 0x([0-9a-f]*)/) { elsif($function =~ /realloc\(0x([0-9a-f]*), (\d*)\) = 0x([0-9a-f]*)/) {
$oldaddr = $1; $oldaddr = $1;
$newsize = $2; $newsize = $2;
@ -212,13 +237,13 @@ while(<FILE>) {
$linenum = $2; $linenum = $2;
$function = $3; $function = $3;
if($function =~ /fopen\(\"([^\"]*)\"\) = (\(nil\)|0x([0-9a-f]*))/) { if($function =~ /fopen\(\"([^\"]*)\",\"([^\"]*)\"\) = (\(nil\)|0x([0-9a-f]*))/) {
if($2 eq "(nil)") { if($3 eq "(nil)") {
; ;
} }
else { else {
$fopen{$3}=1; $fopen{$4}=1;
$fopenfile{$3}="$source:$linenum"; $fopenfile{$4}="$source:$linenum";
$fopens++; $fopens++;
} }
} }
@ -312,6 +337,7 @@ if($addrinfos) {
if($verbose) { if($verbose) {
print "Mallocs: $mallocs\n", print "Mallocs: $mallocs\n",
"Reallocs: $reallocs\n", "Reallocs: $reallocs\n",
"Callocs: $callcs\n",
"Strdups: $strdups\n", "Strdups: $strdups\n",
"Frees: $frees\n", "Frees: $frees\n",
"Allocations: ".($mallocs + $reallocs + $strdups)."\n"; "Allocations: ".($mallocs + $reallocs + $strdups)."\n";