On 24 February 2010 11:41, Alexandre Julliard julliard@winehq.org wrote:
Reece Dunn msclrhd@googlemail.com writes:
On 24 February 2010 11:06, Alexandre Julliard julliard@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