📄 findleak.pl
字号:
#!/usr/bin/perl# From: Ed Beroset <beroset@mindspring.com>my %mem = {};my %alloc = {};while(<>){ if (/realloc\((0x[0-9a-f]+).*\).*returns \((0x[0-9a-f]+)/) { $mem{$1}--; if ($mem{$1} != 0) { print "free before alloc! $_"; } if ($mem{$2} != 0) { print "memory leak! $_"; } $mem{$2}++; $alloc{$2} = $_; } elsif (/free\((0x[0-9a-f]+)/) { $mem{$1}--; if ($mem{$1} != 0) { print "free before alloc! $_"; } } elsif (m/returns (0x[0-9a-f]+)/) { if ($mem{$1} != 0) { print "memory leak! $_"; } $mem{$1}++; $alloc{$1} = $_; }}foreach $goo (sort keys %mem){ if ($mem{$goo}) { print "$mem{$goo} $alloc{$goo}"; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -