[8/21] comctl32: Add basic structure for IImageList interface
owen at owenrudge.net
Sat Aug 15 06:49:03 CDT 2009
> Disassembling Windows Code is not allowed for Wine.
> You should have know that and you should know the result.
I'd just like to explain what it was exactly that I did, to possibly
clear up any confusion. After submitting a set of patches, and receiving
the comment that HIMAGELIST/IImageList should be the same, I was
wondering about maintaining internal compatibility with the "old"
structure, since it looked to me as if the existing HIMAGELIST structure
had been specifically ordered to be compatible with Windows (see the
commit at http://tinyurl.com/mfwl54 for instance - I presumed there was
a reason behind this involving application compatibility). I then wrote
a very simple little test program which took the existing Wine
structural definition of HIMAGELIST, and then cast that onto the Windows
structure, and performed a couple of tests to compare various values
(eg, the "magic" value), to see if they were compatible.
This was the extent of my "debugging" of the code, and I did not then
make use of any of the seemingly-nonsensical values the program
returned. The code in the header file in the patch
(http://tinyurl.com/l4ffln) is the only part that was "affected" by
this, and I simply moved the two structure members I had previous
defined in another structure to the HIMAGELIST structure. I made no
effort to further investigate or make compatible the structure with the
native Windows structure. Additionally, at no time did I actively
"disassemble" any Windows code, or do anything more than compare the
first few values in the structure with this test program. I have since
been made aware that even this is possibly unacceptable, and I
understand that I may have made a mistake in doing so.
Possibly I screwed up a bit, I accept that. I would just like to
reiterate however that it was a very crude form of "debugging", as
detailed above, and that no changes to the code were ultimately made as
a result of it. No other code I have ever written has involved similar
practices, and I would personally argue that this piece of code itself
is for the largest part unaffected.
I appreciate your comments, and hopefully this message will help explain
things. It was obviously never my intention to put the project into
jeopardy by replicating MS code directly (and, of course, this is
something I have not done anyway).
More information about the wine-devel