On Tue, 19 Feb 2002, Sylvain Petreolle wrote:
> Hi,
>
> Using SHLWAPI in native mode with IE6 ends like this :
> $ wine --winver winme IEXPLORE.EXE
> [....]
> Unhandled exception: page fault on read access to
> 0x00000001 in 32-bit code (0x4081749c).
> In 32-bit mode.
> Symbol h_errno is invalid
> 0x4081749c (PathIsUNCServerShareA+0x44 [path.c:1308]
> in libshlwapi.so): cmpb $0x5c,0x0(%esi)
> 1308 if (lpszPath[0]=='\\' && lpszPath[1]=='\\')
>
> regs are like this :Wine-dbg>info regs
> Register dump:
> CS:0023 SS:002b DS:002b ES:002b FS:008f GS:0000
> EIP:4081749c ESP:405c5ce0 EBP:405c5cec
> EFLAGS:00010246( R- 00 I Z- -P1 )
> EAX:405c5d40 EBX:4082c8b4 ECX:00000000 EDX:00000000
> ESI:00000001 EDI:4082c5b0
>
> Using last CVS code.
>
You could try this, I guess, and see if you get any farther. I attached
one, in case your mailer folds this, but you only need one of them.
cd <wine>
patch -p 1 --dry-run <null.diff
patch -p 1 <null.diff
(I like to make sure I haven't fat fingered something befor applying a
patch, but suit yourself. If it helps, let me know and I will make up a
ChangeLog entry and submit it.
diff -ur was/dlls/shlwapi/path.c is/dlls/shlwapi/path.c
--- was/dlls/shlwapi/path.c Tue Jan 29 12:08:19 2002
+++ is/dlls/shlwapi/path.c Tue Feb 19 18:22:31 2002
@@ -1305,6 +1305,7 @@
LPCSTR lpszPath)
{
TRACE("%s\n", debugstr_a(lpszPath));
+ if (!lpszPath) return FALSE;
if (lpszPath[0]=='\\' && lpszPath[1]=='\\')
{
int foundbackslash = 0;
Lawson
---oof---
-------------- next part --------------
diff -ur was/dlls/shlwapi/path.c is/dlls/shlwapi/path.c
--- was/dlls/shlwapi/path.c Tue Jan 29 12:08:19 2002
+++ is/dlls/shlwapi/path.c Tue Feb 19 18:22:31 2002
@@ -1305,6 +1305,7 @@
LPCSTR lpszPath)
{
TRACE("%s\n", debugstr_a(lpszPath));
+ if (!lpszPath) return FALSE;
if (lpszPath[0]=='\\' && lpszPath[1]=='\\')
{
int foundbackslash = 0;