Fix handling of piggybacking errors not to break on success!
authorMike Taylor <mike@indexdata.com>
Wed, 19 Dec 2012 12:07:35 +0000 (12:07 +0000)
committerMike Taylor <mike@indexdata.com>
Wed, 19 Dec 2012 12:07:35 +0000 (12:07 +0000)
lib/ZOOM/IRSpy/Test/Record/PiggyBack.pm

index 9b62142..47a3f08 100644 (file)
@@ -44,7 +44,10 @@ sub start {
 sub completed_search {
     my($conn, $task, $udata, $event) = @_;
 
 sub completed_search {
     my($conn, $task, $udata, $event) = @_;
 
-    if ($event->isa("ZOOM::Exception") && $event->code() == 1005) {
+    # $event can be a ZOOM::Event::* number or a ZOOM::Exception object
+    if (ref $event &&
+       $event->isa("ZOOM::Exception") &&
+       $event->code() == 1005) {
        $conn->log("irspy_test", "Piggyback searching not supported");  
        $conn->record()->store_result('piggyback', 'ok' => 0);
        return ZOOM::IRSpy::Status::TEST_BAD;
        $conn->log("irspy_test", "Piggyback searching not supported");  
        $conn->record()->store_result('piggyback', 'ok' => 0);
        return ZOOM::IRSpy::Status::TEST_BAD;