onsdag 13 juni 2007 skrev Allen Pulsifer:
The attached patch is the final one and applies to 2.2.4?
--
Regards // Oden Eriksson
--- server/request.c 2006-07-12 05:38:44.0 +0200
+++ server/request.c.oden 2007-06-14 09:35:48.0 +0200
@@ -931,13 +931,21 @@
#ifdef
The attached patch is the final one and applies to 2.2.4?
Yes, that is the final patch. It is a diff from v.2.2.4.
The indentation might not be quite correct after applying that patch. Due
space-to-tab conversion issues with my editor, I had to do a diff -u -b,
and the patch is not correctly
Here's a proper diff, without the spacing issue. (It was actually a line
terminator issue, caused by editing the file under Windows.)
--- request.c-2.2.4 2007-06-14 06:47:44.850623600 -0400
+++ request.c 2007-06-13 21:34:01.659559100 -0400
@@ -931,12 +931,20 @@
#ifdef
server/request.c lines 930 to 940 currently read:
if (r-finfo.filetype
#ifdef CASE_BLIND_FILESYSTEM
(filename_len = canonical_len)
#endif
((opts.opts (OPT_SYM_OWNER | OPT_SYM_LINKS)) ==
OPT_SYM_LINKS))
{
thisinfo.filetype
if (r-finfo.filetype == APR_REG
(!r-path_info || !*r-path_info) )
Possible stupid question, but why do we need this path_info check?
ap_directory_walk uses r-path_info to hold the portion of the path that has
not yet been walked. The check on
After sending that last post, I realized that if the full path points to a
directory, it will do a final lstat even though it doesn't need to.
That's easy to fix. Here is the revised code, the revised patch, and test
output.
CODE:
if (r-finfo.filetype
#ifdef CASE_BLIND_FILESYSTEM
I hate to have to do this...
I realized that ++seg should only be incremented when the optimization
results in either a continue or a break. Here is the correction:
CODE:
if (r-finfo.filetype
#ifdef CASE_BLIND_FILESYSTEM
(filename_len = canonical_len)
#endif