On 24 February 2010 11:41, Alexandre Julliard <julli...@winehq.org> wrote: > Reece Dunn <mscl...@googlemail.com> writes: > >> On 24 February 2010 11:06, Alexandre Julliard <julli...@winehq.org> wrote: >>> It may be the simplest, but the right way is to add such a test and >>> figure out the appropriate behavior. >> >> Will do -- that was next on my things to do. >> >> Do I need to do that first before this change, or after it? > > Before, since otherwise you are removing code that may still be needed.
I have run some tests on XP and Win7: Seek 0xFFFFFFFF: hr=80030019, High=00000000, Low=00000000 Seek 0x80000000: hr=80030019, High=00000000, Low=00000000 Seek 0x7FFFFFFF: hr=00000000, High=00000000, Low=7fffffff Seek 0x00000009: hr=00000000, High=00000000, Low=80000008 Seek 0x7FFFFFFF: hr=00000000, High=00000000, Low=00000007 So it looks like Windows: 1/ does not accept a LowPart that is greater than 0x7FFFFFFF; 2/ does not check for integer overflow. I will clean these up and write them as proper tests for ole32:hglobalstream and then fix the todo blocks to implement the correct behaviour later on today. Thanks, - Reece