more valgrind friendly test

This commit is contained in:
antirez 2011-07-06 15:22:00 +02:00
parent 10ba492fa3
commit cabe03eb75
3 changed files with 25 additions and 4 deletions

View File

@ -3,3 +3,15 @@
Memcheck:Cond Memcheck:Cond
fun:lzf_compress fun:lzf_compress
} }
{
<lzf_unitialized_hash_table>
Memcheck:Value4
fun:lzf_compress
}
{
<lzf_unitialized_hash_table>
Memcheck:Value8
fun:lzf_compress
}

View File

@ -1,5 +1,6 @@
set ::global_overrides {} set ::global_overrides {}
set ::tags {} set ::tags {}
set ::valgrind_errors {}
proc error_and_quit {config_file error} { proc error_and_quit {config_file error} {
puts "!!COULD NOT START REDIS-SERVER\n" puts "!!COULD NOT START REDIS-SERVER\n"
@ -16,11 +17,12 @@ proc check_valgrind_errors stderr {
close $fd close $fd
if {![regexp -- {ERROR SUMMARY: 0 errors} $buf] || if {![regexp -- {ERROR SUMMARY: 0 errors} $buf] ||
![regexp -- {definitely lost: 0 bytes} $buf]} { (![regexp -- {definitely lost: 0 bytes} $buf] &&
![regexp -- {no leaks are possible} $buf])} {
puts "*** VALGRIND ERRORS ***" puts "*** VALGRIND ERRORS ***"
puts $buf puts $buf
puts "--- press enter to continue ---" puts "-----------------------"
gets stdin append ::valgrind_errors "$buf\n\n"
} }
} }

View File

@ -138,6 +138,7 @@ proc execute_everything {} {
proc main {} { proc main {} {
cleanup cleanup
set exit_with_error 0
if {[string length $::file] > 0} { if {[string length $::file] > 0} {
foreach {file} [split $::file ,] { foreach {file} [split $::file ,] {
@ -169,8 +170,14 @@ proc main {} {
} }
puts "" puts ""
exit 1 incr exit_with_error
} }
if {[string length $::valgrind_errors]} {
puts "Valgrind errors:\n$::valgrind_errors"
incr exit_with_error
}
if {$exit_with_error} {exit 1}
} }
# parse arguments # parse arguments