From ff79ab71dbb1443edd4273e3b1022b76ccbd3ab5 Mon Sep 17 00:00:00 2001 From: antirez Date: Fri, 6 Apr 2012 23:52:28 +0200 Subject: redis.tcl: no longer leave unread replies if an error happens during a MULTI/EXEC block. --- tests/support/redis.tcl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'tests/support') diff --git a/tests/support/redis.tcl b/tests/support/redis.tcl index ca6cf34b6..99415b640 100644 --- a/tests/support/redis.tcl +++ b/tests/support/redis.tcl @@ -142,9 +142,15 @@ proc ::redis::redis_multi_bulk_read fd { set count [redis_read_line $fd] if {$count == -1} return {} set l {} + set err {} for {set i 0} {$i < $count} {incr i} { - lappend l [redis_read_reply $fd] + if {[catch { + lappend l [redis_read_reply $fd] + } e] && $err eq {}} { + set err $e + } } + if {$err ne {}} {return -code error $err} return $l } -- cgit v1.2.1