PATCH: EnumProps16 do not enumerate non strings
Marcus Meissner
meissner at suse.de
Fri Jul 22 04:19:54 CDT 2005
Hi,
In 2001 when windows/property.c moved to dlls/user/property.c additionaly
EnumProps16 gained the ability to enumerate non-string atoms.
This brings a 16 bit application I have here to crash in
repne scansb es:(di), so it clearly expects get only strings.
Ciao, Marcus
Changelog:
Do not enumerate non-strings in EnumProp16.
Index: dlls/user/property.c
===================================================================
RCS file: /home/wine/wine/dlls/user/property.c,v
retrieving revision 1.13
diff -u -r1.13 property.c
--- dlls/user/property.c 11 May 2005 19:01:10 -0000 1.13
+++ dlls/user/property.c 22 Jul 2005 09:19:06 -0000
@@ -31,10 +31,13 @@
#include "wine/unicode.h"
#include "wine/winuser16.h"
#include "wine/server.h"
+#include "wine/debug.h"
/* size of buffer needed to store an atom string */
#define ATOM_BUFFER_SIZE 256
+WINE_DEFAULT_DEBUG_CHANNEL(msg);
+
/***********************************************************************
* get_properties
@@ -279,14 +282,8 @@
args[2] = SELECTOROF(segptr);
args[1] = OFFSETOF(segptr);
args[0] = LOWORD(list[i].handle);
- }
- else
- {
- args[3] = hwnd;
- args[2] = 0;
- args[1] = list[i].atom;
- args[0] = LOWORD(list[i].handle);
- }
+ } else
+ WARN("Skipping non string atom %x.\n", list[i].atom);
WOWCallback16Ex( (DWORD)func, WCB16_PASCAL, sizeof(args), args, &result );
if (!(ret = LOWORD(result))) break;
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-patches/attachments/20050722/59b5d62a/attachment.pgp
More information about the wine-patches
mailing list