]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/ipc/mach_kernelrpc.c
xnu-3789.31.2.tar.gz
[apple/xnu.git] / osfmk / ipc / mach_kernelrpc.c
index af9223254bf9c18556118cd3733a155b7cc2f769..1b50efbb70a949df9be73959ed61dc039732fc04 100644 (file)
@@ -256,6 +256,11 @@ _kernelrpc_mach_port_insert_right_trap(struct _kernelrpc_mach_port_insert_right_
        disp = ipc_object_copyin_type(args->polyPoly);
 
        rv = mach_port_insert_right(task->itk_space, args->name, port, disp);
+       if (rv != KERN_SUCCESS) {
+               if (IO_VALID((ipc_object_t)port)) {
+                       ipc_object_destroy((ipc_object_t)port, disp);
+               }
+       }
        
 done:
        if (task)