annoyance running mingw

Sylvain Petreolle spetreolle at yahoo.fr
Tue Feb 25 21:33:31 CST 2003


It seems to be true, ported mingwmicq-0.4.10.1-mingw.exe  wrote .micqrc
into
my linux $HOME.

> The message is correct, but Wine's behavior is not.  I'm pretty
> sure you understand the issue, but for anyone still wondering:
> The problem is strictly theoretical at this point, but we should be
> aware
> of it in case somebody runs into it in the future.  Here's the
> scenario:
>   * user installs MinGW or some other app that's been ported
>     to Win32 but uses Unix-style path separators for win32
>     directories
>   * a path used by the program happens to exist both in
>     the Windows filespace on drive C: (presumably this would be
> something
>     installed by the app) and in the Unix filespace.
>     For instance, the path /etc/blort/config might be a configuration
>     file for a library used both on Linux and installed independently
>     onto drive C: by the application.
>    * The app tries to open the file on drive C:, and gets the
>     file in Linux instead.  Bang!  The program crashes, or gives
>     bad results.
> 
> > ... In order to change this behavior we would have to 
> > make changes to GetShortPathNameW so that it tries the path with
> the 
> > current drive first and then calls this (modified) function. After 
> > looking at the code for the last couple of hours I'm sure it could
> be 
> > done but I don't know if it is worth it.
> 
> Thanks for looking at it.
> 
> > At present I think that it would be better to change the message
> > 
> >    {
> > 
> >        if ((drive = DRIVE_FindDriveRootW( name )) == -1)
> > 
> >        {
> > 
> > -            MESSAGE("Warning: %s not accessible from a configured
> DOS 
> > drive\n", debugstr_w(*name) );
> > 
> > +            WARN("failed to find %s as an absolute unix path
> mapped to 
> > configured DOS drive \n",
> > +                   debugstr_w(*name) );
> > +            WARN("assuming it was a really a DOS name")
> >            /* Assume it really was a DOS name */
> > 
> >            drive = DRIVE_GetCurrentDrive();
> > 
> >        }
> > 
> > Or something like that.
> 
> Or something like that, yeah.  We want to display a hint that
> there might be a misinterpretation of a DOS path as a Unix path.
> - Dan
> 
> -- 
> Dan Kegel
> http://www.kegel.com
> http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=78045
> 
>  

=====
Sylvain Petreolle
spetreolle at users.sourceforge.net 
Fight against Spam ! http://www.euro.cauce.org/en/index.html
ICQ #170597259

"Don't think you are. Know you are." Morpheus, in "Matrix".

___________________________________________________________
Do You Yahoo!? -- Une adresse @yahoo.fr gratuite et en français !
Yahoo! Mail : http://fr.mail.yahoo.com



More information about the wine-devel mailing list