http://bugs.winehq.org/show_bug.cgi?id=18006
--- Comment #9 from the_unknown@gmx.net 2009-06-07 16:07:02 --- (In reply to comment #8)
Unfortunately this doesn't bring new information for me cause test was written exactly about it. If I understand him right we are talking about LVM_INSERTCOLUMN message which he (author) doesn't send. That's how I got a phrase:
when there is at least one column to display text
means "I've sent LVM_INSERTCOLUMN at least once".
If it means something else please let me know.
Reply from Mp3Tag author:
OK, I've installed Ubuntu with Wine 1.1.23 to try it by myself.
The error occurs because the listview gets the LVN_GETDISPINFO message after an item was added even if the listview does not contain any columns at this point (that means LVM_INSERTCOLUMN hasn't been sent). My application adds columns dynamically and uses a map from column indexes to a data structure containing the actual item texts to retrieve the texts. In this case, the map was empty (no columns) but was accessed at the 0 index in the LVN_GETDISPINFO handler (which caused the crash). This only happened under Wine because the LVN_GETDISPINFO message was not sent on native Windows.
However, I've tried to create a sample test application which shows this different behaviour. Unfortunately, I can't reproduce it, because in the LVN_GETDISPINFO message gets sent on both native Windows and Wine. So it seems that the bug was indeed with Mp3tag but only showed up when running under Wine.
Sorry for the false alarm.