You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by be...@hyperreal.org on 1997/10/21 11:12:15 UTC
cvs commit: apachen/src/os/win32 os.h util_win32.c
ben 97/10/21 02:12:15
Modified: src/main conf.h
src/os/win32 os.h util_win32.c
Log:
Work around buggy stat() implementation on Win95.
Revision Changes Path
1.148 +4 -1 apachen/src/main/conf.h
Index: conf.h
===================================================================
RCS file: /export/home/cvs/apachen/src/main/conf.h,v
retrieving revision 1.147
retrieving revision 1.148
diff -u -r1.147 -r1.148
--- conf.h 1997/10/07 05:53:39 1.147
+++ conf.h 1997/10/21 09:12:11 1.148
@@ -56,6 +56,10 @@
*/
+/* Have to include sys/stat.h before ../os/win32/os.h so we can override
+stat() properly */
+#include <sys/stat.h>
+
#ifdef WIN32
#include "../os/win32/os.h"
#else
@@ -713,7 +717,6 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
-#include <sys/stat.h>
#include <ctype.h>
#if !defined(MPE) && !defined(WIN32)
#include <sys/file.h>
1.6 +2 -0 apachen/src/os/win32/os.h
Index: os.h
===================================================================
RCS file: /export/home/cvs/apachen/src/os/win32/os.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- os.h 1997/09/14 14:20:47 1.5
+++ os.h 1997/10/21 09:12:13 1.6
@@ -80,3 +80,5 @@
return file && (file[0] == '/' || file[1] == ':');
}
+#define stat(f,ps) os_stat(f,ps)
+API_EXPORT(int) os_stat(const char *szPath,struct stat *pStat);
1.2 +25 -0 apachen/src/os/win32/util_win32.c
Index: util_win32.c
===================================================================
RCS file: /export/home/cvs/apachen/src/os/win32/util_win32.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- util_win32.c 1997/08/18 10:59:06 1.1
+++ util_win32.c 1997/10/21 09:12:14 1.2
@@ -1,5 +1,6 @@
#include <windows.h>
#include <assert.h>
+#include <sys/stat.h>
#include "httpd.h"
@@ -60,4 +61,28 @@
sub_canonical_filename(buf,szFile);
strlwr(buf);
return pstrdup(pPool,buf);
+}
+
+/*
+Win95 doesn't like trailing /s. NT and Unix don't mind. This works around
+the problem
+*/
+
+#undef stat
+API_EXPORT(int) os_stat(const char *szPath,struct stat *pStat)
+{
+ int n;
+
+ n=strlen(szPath);
+ if(szPath[n-1] == '\\' || szPath[n-1] == '/')
+ {
+ char buf[_MAX_PATH];
+
+ ap_assert(n < _MAX_PATH);
+ strcpy(buf,szPath);
+ buf[n-1]='\0';
+
+ return stat(buf,pStat);
+ }
+ return stat(szPath,pStat);
}
Re: cvs commit: apachen/src/os/win32 os.h util_win32.c
Posted by Ben Laurie <be...@algroup.co.uk>.
Paul Sutton wrote:
>
> On 21 Oct 1997 ben@hyperreal.org wrote:
> > ben 97/10/21 02:12:15
> >
> > Modified: src/main conf.h
> > src/os/win32 os.h util_win32.c
> > Log:
> > Work around buggy stat() implementation on Win95.
>
> Does this fix the index.html problem?
It does. I guess we can close a bunch of PRs as a result.
Cheers,
Ben.
--
Ben Laurie |Phone: +44 (181) 735 0686|Apache Group member
Freelance Consultant |Fax: +44 (181) 735 0689|http://www.apache.org
and Technical Director|Email: ben@algroup.co.uk |Apache-SSL author
A.L. Digital Ltd, |http://www.algroup.co.uk/Apache-SSL
London, England. |"Apache: TDG" http://www.ora.com/catalog/apache
Re: cvs commit: apachen/src/os/win32 os.h util_win32.c
Posted by Paul Sutton <pa...@ukweb.com>.
On 21 Oct 1997 ben@hyperreal.org wrote:
> ben 97/10/21 02:12:15
>
> Modified: src/main conf.h
> src/os/win32 os.h util_win32.c
> Log:
> Work around buggy stat() implementation on Win95.
Does this fix the index.html problem? If not, what does it fix?
//pcs
Re: cvs commit: apachen/src/os/win32 os.h util_win32.c
Posted by Paul Sutton <pa...@ukweb.com>.
On 21 Oct 1997 ben@hyperreal.org wrote:
> ben 97/10/21 02:12:15
>
> Modified: src/main conf.h
> src/os/win32 os.h util_win32.c
> Log:
> Work around buggy stat() implementation on Win95.
Does this fix the index.html problem? If not, what does it fix?
//pcs