You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by wr...@apache.org on 2007/06/01 19:58:46 UTC

svn commit: r543557 - in /apr/apr/branches/0.9.x/file_io: netware/mktemp.c unix/mktemp.c

Author: wrowe
Date: Fri Jun  1 10:58:45 2007
New Revision: 543557

URL: http://svn.apache.org/viewvc?view=rev&rev=543557
Log:
Register a cleanup only if APR_FILE_NOCLEANUP was not flagged.

Submitted by: Brian J. France <list firehawksystems.com>
Reviewed by: wrowe, bojan
Backport: 543555

Modified:
    apr/apr/branches/0.9.x/file_io/netware/mktemp.c
    apr/apr/branches/0.9.x/file_io/unix/mktemp.c

Modified: apr/apr/branches/0.9.x/file_io/netware/mktemp.c
URL: http://svn.apache.org/viewvc/apr/apr/branches/0.9.x/file_io/netware/mktemp.c?view=diff&rev=543557&r1=543556&r2=543557
==============================================================================
--- apr/apr/branches/0.9.x/file_io/netware/mktemp.c (original)
+++ apr/apr/branches/0.9.x/file_io/netware/mktemp.c Fri Jun  1 10:58:45 2007
@@ -41,9 +41,12 @@
     if ((rv = apr_file_open(fp, template, flags|APR_FILE_NOCLEANUP,
                             APR_UREAD | APR_UWRITE, p)) == APR_SUCCESS) {
 
-        apr_pool_cleanup_register((*fp)->pool, (void *)(*fp),
-                                  apr_unix_file_cleanup,
-                                  apr_unix_child_file_cleanup);
+
+	if (!(flags & APR_FILE_NOCLEANUP)) {
+	    apr_pool_cleanup_register((*fp)->pool, (void *)(*fp),
+				      apr_unix_file_cleanup,
+				      apr_unix_child_file_cleanup);
+	}
     }
 
     return rv;

Modified: apr/apr/branches/0.9.x/file_io/unix/mktemp.c
URL: http://svn.apache.org/viewvc/apr/apr/branches/0.9.x/file_io/unix/mktemp.c?view=diff&rev=543557&r1=543556&r2=543557
==============================================================================
--- apr/apr/branches/0.9.x/file_io/unix/mktemp.c (original)
+++ apr/apr/branches/0.9.x/file_io/unix/mktemp.c Fri Jun  1 10:58:45 2007
@@ -197,9 +197,11 @@
     apr_os_file_put(fp, &fd, flags, p);
     (*fp)->fname = apr_pstrdup(p, template);
 
-    apr_pool_cleanup_register((*fp)->pool, (void *)(*fp),
-                              apr_unix_file_cleanup,
-                              apr_unix_child_file_cleanup);
+    if (!(flags & APR_FILE_NOCLEANUP)) {
+        apr_pool_cleanup_register((*fp)->pool, (void *)(*fp),
+                                  apr_unix_file_cleanup,
+                                  apr_unix_child_file_cleanup);
+    }
 #endif
     return APR_SUCCESS;
 }