stoddard 99/10/12 18:38:13
Modified: src/lib/apr/file_io/win32 open.c
Log:
Register a clean-up on each file open & make sure all the file_t fields are
initialized
Revision Changes Path
1.5 +7 -2 apache-2.0/src/lib/apr/file_io/win32/open.c
Index: open.c
===================================================================
RCS file: /home/cvs/apache-2.0/src/lib/apr/file_io/win32/open.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- open.c 1999/10/06 23:03:54 1.4
+++ open.c 1999/10/13 01:38:13 1.5
@@ -101,6 +101,8 @@
}
if (flag & APR_BUFFERED) {
+ (*dafile)->buffered = TRUE;
+ } else {
(*dafile)->buffered = FALSE;
}
(*dafile)->fname = strdup(fname);
@@ -137,7 +139,10 @@
theerror = GetLastError();
return APR_EEXIST;
}
+ (*dafile)->stated = 0; /* we haven't called stat for this file yet. */
(*dafile)->eof_hit = 0;
+ ap_register_cleanup((*dafile)->cntxt, (void *)(*dafile), file_cleanup,
+ ap_null_cleanup);
return APR_SUCCESS;
}
@@ -156,10 +161,10 @@
char *temp = canonical_filename(cont, path);
if (DeleteFile(temp)) {
- return APR_SUCCESS;
+ return APR_SUCCESS;
}
else {
- return APR_EEXIST;
+ return APR_EEXIST;
}
}