set/remove window property patch

Rein Klazes rklazes at xs4all.nl
Sun Jan 27 15:51:45 CST 2002


hi,

This fixes FindText, for native and builtin commdlg libs. Both try to
set a windowproperty with a call SetProp(hwnd,(ATOM)0xa000,...). On
the server side a string atom is expected, not an integer atom. Tested
under win2000 that 0xa000 is not some magic value, but any integer
atom is accepted.

Changelog:
	server	: window.c
	Allow integer atoms in set_property and remove_property.
	Needed by FindText common dialog.

Rein.
-- 
Rein Klazes
rklazes at xs4all.nl
-------------- next part --------------
--- wine/server/window.c	Fri Nov 30 19:46:51 2001
+++ mywine/server/window.c	Sun Jan 27 20:59:54 2002
@@ -144,7 +144,7 @@
     }
 
     /* need to add an entry */
-    if (!grab_global_atom( atom )) return;
+    if (atom >= MAXINTATOM && !grab_global_atom( atom )) return;
     if (free == -1)
     {
         /* no free entry */
@@ -178,7 +178,8 @@
         if (win->properties[i].type == PROP_TYPE_FREE) continue;
         if (win->properties[i].atom == atom)
         {
-            release_global_atom( atom );
+            if (atom >= MAXINTATOM)
+                release_global_atom( atom );
             win->properties[i].type = PROP_TYPE_FREE;
             return win->properties[i].handle;
         }


More information about the wine-patches mailing list