rse 98/11/06 04:24:38
Modified: src CHANGES
src/main alloc.c
Log:
Fix internal handling of registered cleanups in alloc.c by making sure that
NULL-specified callback functions (we don't do this in the official set of
modules, but third-party modules do) for ap_register_cleanup() always mean the
dummy ap_null_cleanup() so we don't dump core later when running the cleanups.
Submitted by: J.Kean Johnston <[EMAIL PROTECTED]>
Reviewed by: Ralf S. Engelschall
PR: 3307, 3250, 3256
Revision Changes Path
1.1137 +7 -0 apache-1.3/src/CHANGES
Index: CHANGES
===================================================================
RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v
retrieving revision 1.1136
retrieving revision 1.1137
diff -u -r1.1136 -r1.1137
--- CHANGES 1998/11/05 20:11:23 1.1136
+++ CHANGES 1998/11/06 12:24:35 1.1137
@@ -1,5 +1,12 @@
Changes with Apache 1.3.4
+ *) Fix internal handling of registered cleanups in alloc.c by making sure
+ that NULL-specified callback functions (we don't do this in the official
+ set of modules, but third-party modules do) for ap_register_cleanup()
+ always mean the dummy ap_null_cleanup() so we don't dump core later when
+ running the cleanups.
+ [J.Kean Johnston <[EMAIL PROTECTED]>] PR#3307, PR#3250, PR#3256
+
*) Fix problems with handling of UNC names (e.g., \\host\path)
on Win32. [Ken Parzygnat <[EMAIL PROTECTED]>]
1.102 +2 -2 apache-1.3/src/main/alloc.c
Index: alloc.c
===================================================================
RCS file: /export/home/cvs/apache-1.3/src/main/alloc.c,v
retrieving revision 1.101
retrieving revision 1.102
diff -u -r1.101 -r1.102
--- alloc.c 1998/10/02 02:02:41 1.101
+++ alloc.c 1998/11/06 12:24:37 1.102
@@ -1560,8 +1560,8 @@
{
struct cleanup *c = (struct cleanup *) ap_palloc(p, sizeof(struct
cleanup));
c->data = data;
- c->plain_cleanup = plain_cleanup;
- c->child_cleanup = child_cleanup;
+ c->plain_cleanup = (plain_cleanup != NULL ? plain_cleanup :
ap_null_cleanup);
+ c->child_cleanup = (child_cleanup != NULL ? child_cleanup :
ap_null_cleanup);
c->next = p->cleanups;
p->cleanups = c;
}