PATCH: GlobalAddAtomA check for invalid ptr
Marcus Meissner
marcus at jet.franken.de
Tue Aug 9 01:58:16 CDT 2005
Hi,
This checks the string passed to GlobalAddAtomA() for being a valid pointer.
The Ikea kitchen planner passed 0xcccccccc for some reason and works much better
after this patch.
Ciao, Marcus
Changelog:
Check the passed string to GlobalAddAtomA.
Index: dlls/kernel/atom.c
===================================================================
RCS file: /home/wine/wine/dlls/kernel/atom.c,v
retrieving revision 1.8
diff -u -r1.8 atom.c
--- dlls/kernel/atom.c 10 May 2005 15:15:50 -0000 1.8
+++ dlls/kernel/atom.c 9 Aug 2005 06:55:47 -0000
@@ -183,6 +183,10 @@
*/
ATOM WINAPI GlobalAddAtomA( LPCSTR str /* [in] String to add */ )
{
+ if (HIWORD(str) && IsBadStringPtrA(str, MAX_ATOM_LEN)) {
+ SetLastError( ERROR_INVALID_PARAMETER );
+ return 0;
+ }
return ATOM_AddAtomA( str, NULL );
}
--
More information about the wine-patches
mailing list