Author: pho
Date: Mon Mar 12 11:56:57 2012
New Revision: 232860
URL: http://svn.freebsd.org/changeset/base/232860

Log:
  Allways call fdrop().

Modified:
  head/sys/kern/sys_capability.c

Modified: head/sys/kern/sys_capability.c
==============================================================================
--- head/sys/kern/sys_capability.c      Mon Mar 12 11:22:23 2012        
(r232859)
+++ head/sys/kern/sys_capability.c      Mon Mar 12 11:56:57 2012        
(r232860)
@@ -261,16 +261,14 @@ sys_cap_new(struct thread *td, struct ca
                return (error);
        AUDIT_ARG_FILE(td->td_proc, fp);
        error = kern_capwrap(td, fp, rights, &capfd);
-       if (error)
-               return (error);
-
        /*
         * Release our reference to the file (kern_capwrap has held a reference
         * for the filedesc array).
         */
        fdrop(fp, td);
-       td->td_retval[0] = capfd;
-       return (0);
+       if (error == 0)
+               td->td_retval[0] = capfd;
+       return (error);
 }
 
 /*
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to