Re: PATCH: NtWriteFile

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jan 09, 2004 at 04:21:09PM +0100, Marcus Meissner wrote:
> Hi,
> 
> This fixes a crash when WriteFile()ing to a file descriptor which
> needs an OVERLAPPED parameter.
> 
> The behaviour is merely undefined according to MSDN, it should not crash.
> It also mirrors same code in NtReadFile.
> It should also fix bug #1874.

Actually we probably should set offset to 0 if none is present.
 
Ciao, Marcus

Changelog:
	Allow offset of NULL to NtWriteFile.

Index: dlls/ntdll/file.c
===================================================================
RCS file: /home/wine/wine/dlls/ntdll/file.c,v
retrieving revision 1.35
diff -u -r1.35 file.c
--- dlls/ntdll/file.c	1 Dec 2003 23:01:13 -0000	1.35
+++ dlls/ntdll/file.c	9 Jan 2004 15:22:47 -0000
@@ -558,8 +558,12 @@
         ovp->async.event = hEvent;
         ovp->async.iosb = io_status;
         ovp->count = length;
-        ovp->offset = offset->s.LowPart;
-        if (offset->s.HighPart) FIXME("NIY-high part\n");
+        if (offset) {
+            ovp->offset = offset->s.LowPart;
+            if (offset->s.HighPart) FIXME("NIY-high part\n");
+        } else {
+            ovp->offset = 0;
+        }
         ovp->apc = apc;
         ovp->apc_user = apc_user;
         ovp->buffer = (void*)buffer;

Attachment: pgp00212.pgp
Description: PGP signature


[Index of Archives]     [Gimp for Windows]     [Red Hat]     [Samba]     [Yosemite Camping]     [Graphics Cards]     [Wine Home]

  Powered by Linux