[Mono-list] ASP.NET on Mac OS X
Dan Winship
danw@ximian.com
Sun, 08 Feb 2004 12:28:21 -0500
> The problem in Mono occurs in the GetConfigFromFileName(...) on line
> 136 of WebConfigurationSettings.cs. This method checks to see if
> "web.config" exists, and then checks to see if "Web.config" exists. If
> both exist, it throws an exception, which kills any ASPX in its tracks.
> On my Mac OS X machine, only one web.config file exists, but it can be
> reached with either name because of the aforementioned case sensitivity
> issue.
>
> The check that is performed in the code looks at DirectorySeparatorChar
> to determine if you are on a UNIX machine, and then assumes case
> sensitivity. The check probably needs to be changed to exclude Mac OS
> X from the generated exception.
That's a property of the filesystem though, not the OS. OS X does let
you have UFS or case-sensitive HFS partitions (and OS X Server defaults
to using a case-sensitive filesystem).
If this were a POSIX C program, I'd say that you should stat() both
files and only throw the exception if they have the same st_ino. But I
don't know if you can translate that into C#/.Net.
-- Dan