[PATCH 1/3] storage.dll16: Fix negation in IStream::Seek.

Alex Henrie alexhenrie24 at gmail.com
Sat Feb 11 16:08:23 CST 2017


@@ -1196,9 +1196,8 @@ HRESULT CDECL IStream16_fnSeek(IStream16 *iface,
LARGE_INTEGER offset, DWORD whe
         break;
     case SEEK_CUR:
         if (offset.u.HighPart < 0) {
-            /* FIXME: is this negation correct ? */
-            offset.u.HighPart = -offset.u.HighPart;
-            offset.u.LowPart = (0xffffffff ^ offset.u.LowPart)+1;
+                        offset.u.HighPart = ~offset.u.HighPart;
+                        offset.u.LowPart = -offset.u.LowPart;

             assert(offset.u.HighPart==0);
             assert(This->offset.u.LowPart >= offset.u.LowPart);

You're mixing tabs and spaces.

-Alex



More information about the wine-devel mailing list