]> Cypherpunks repositories - gostls13.git/commitdiff
fix bug in CL 30057: missed if+continue in one place.
authorRuss Cox <rsc@golang.org>
Mon, 27 Jul 2009 17:59:59 +0000 (10:59 -0700)
committerRuss Cox <rsc@golang.org>
Mon, 27 Jul 2009 17:59:59 +0000 (10:59 -0700)
R=gri
DELTA=2  (2 added, 0 deleted, 0 changed)
OCL=32214
CL=32223

src/pkg/runtime/darwin/thread.c

index 2a6116c103f268e59f238b21eb7b0049dc64eca6..c394ab490efbbaaea1c0911599cdd4ebd34b8682 100644 (file)
@@ -409,6 +409,8 @@ mach_semdestroy(uint32 sem)
        m.tx.semaphore.type = 0;
 
        while((r = machcall(&m.tx.h, sizeof m, 0)) != 0){
+               if(r == KERN_ABORTED)   // interrupted
+                       continue;
                macherror(r, "semaphore_destroy");
        }
 }