From: "Jeff Trawick" <[EMAIL PROTECTED]>
Sent: Friday, August 24, 2001 8:00 AM


> Jeff Trawick <[EMAIL PROTECTED]> writes:
> 
> > "William A. Rowe, Jr." <[EMAIL PROTECTED]> writes:
> > 
> > > We now fail to read mmap var content entirely.  This is bad.
> > > However, it is as likely as not that the apr_seek code is simply
> > > broken on Win32 buffered files.  Please, let me know if you are 
> > > seeing only a single variant listed for .var files if you set your 
> > > language to something like xx for a Unix server, so I know where to 
> > > look first in the morning.  
> > > 
> > > We actually flip between gets and read, which makes things tricky.
> > 
> > The problem seems to be that ungetc doesn't work on buffered files.
> > And yet the ungetc operation is usually needed by program logic that
> > needs buffering.
> 
> Oops, this was a Unix statement (now out-of-date :) ).  I have no idea
> why mod_negotiation is failing on Win32.  testfile.exe just ran fine
> for me on Win98.  I don't have a way to run Apache on Win32, so no
> guesses on the failure other than that the problem is most likely in
> srclib/file_io/win32/*.c :)

I'm certain the bug is also in the ungetc/seek buffering code.

While we are on mod_negotiation.c, our logic to slam down a mod_include
request on the second recursion breaks the server horribly.  Just try the
error documents right now, via indirection.  We get a 506 (variant also
negotiates) which we shouldn't be seeing with a 1:n match in a .var file.

Bill

Reply via email to