Damjan Jovanovic : winex11.drv: Don' t bother counting how many XDND selections are converted.

Alexandre Julliard julliard at winehq.org
Thu Jun 12 15:51:43 CDT 2014


Module: wine
Branch: master
Commit: a8499c0803ccace80b1b753a7d53c5969be9743a
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=a8499c0803ccace80b1b753a7d53c5969be9743a

Author: Damjan Jovanovic <damjan.jov at gmail.com>
Date:   Tue May 27 02:21:44 2014 +0200

winex11.drv: Don't bother counting how many XDND selections are converted.

---

 dlls/winex11.drv/xdnd.c |   30 +++++++++++-------------------
 1 file changed, 11 insertions(+), 19 deletions(-)

diff --git a/dlls/winex11.drv/xdnd.c b/dlls/winex11.drv/xdnd.c
index 5ed0787..eb98215 100644
--- a/dlls/winex11.drv/xdnd.c
+++ b/dlls/winex11.drv/xdnd.c
@@ -75,9 +75,9 @@ static void X11DRV_XDND_InsertXDNDData(int property, int format, void* data, uns
 static int X11DRV_XDND_DeconstructTextURIList(int property, void* data, int len);
 static int X11DRV_XDND_DeconstructTextPlain(int property, void* data, int len);
 static int X11DRV_XDND_DeconstructTextHTML(int property, void* data, int len);
-static int X11DRV_XDND_MapFormat(unsigned int property, unsigned char *data, int len);
+static void X11DRV_XDND_MapFormat(unsigned int property, unsigned char *data, int len);
 static void X11DRV_XDND_ResolveProperty(Display *display, Window xwin, Time tm,
-    Atom *types, unsigned long *count);
+    Atom *types, unsigned long count);
 static void X11DRV_XDND_SendDropFiles(HWND hwnd);
 static void X11DRV_XDND_FreeDragDropOp(void);
 static unsigned int X11DRV_XDND_UnixToDos(char** lpdest, char* lpsrc, int len);
@@ -257,7 +257,7 @@ void X11DRV_XDND_EnterEvent( HWND hWnd, XClientMessageEvent *event )
 
     /* Do a one-time data read and cache results */
     X11DRV_XDND_ResolveProperty(event->display, event->window,
-                                event->data.l[1], xdndtypes, &count);
+                                event->data.l[1], xdndtypes, count);
 
     if (event->data.l[1] & 1)
         XFree(xdndtypes);
@@ -454,7 +454,7 @@ void X11DRV_XDND_LeaveEvent( HWND hWnd, XClientMessageEvent *event )
  * Resolve all MIME types to windows clipboard formats. All data is cached.
  */
 static void X11DRV_XDND_ResolveProperty(Display *display, Window xwin, Time tm,
-                                        Atom *types, unsigned long *count)
+                                        Atom *types, unsigned long count)
 {
     unsigned int i, j;
     BOOL res;
@@ -462,16 +462,15 @@ static void X11DRV_XDND_ResolveProperty(Display *display, Window xwin, Time tm,
     Atom acttype;
     int actfmt;
     unsigned long bytesret, icount;
-    int entries = 0;
     unsigned char* data = NULL;
     XDNDDATA *current, *next;
     BOOL haveHDROP = FALSE;
 
-    TRACE("count(%ld)\n", *count);
+    TRACE("count(%ld)\n", count);
 
     X11DRV_XDND_FreeDragDropOp(); /* Clear previously cached data */
 
-    for (i = 0; i < *count; i++)
+    for (i = 0; i < count; i++)
     {
         TRACE("requesting atom %ld from xwin %ld\n", types[i], xwin);
 
@@ -498,7 +497,7 @@ static void X11DRV_XDND_ResolveProperty(Display *display, Window xwin, Time tm,
         XGetWindowProperty(display, xwin, x11drv_atom(XdndTarget), 0, 65535, FALSE,
             AnyPropertyType, &acttype, &actfmt, &icount, &bytesret, &data);
 
-        entries += X11DRV_XDND_MapFormat(types[i], data, get_property_size( actfmt, icount ));
+        X11DRV_XDND_MapFormat(types[i], data, get_property_size( actfmt, icount ));
         XFree(data);
     }
 
@@ -522,12 +521,9 @@ static void X11DRV_XDND_ResolveProperty(Display *display, Window xwin, Time tm,
                 list_remove(&current->entry);
                 HeapFree(GetProcessHeap(), 0, current->data);
                 HeapFree(GetProcessHeap(), 0, current);
-                --entries;
             }
         }
     }
-
-    *count = entries;
 }
 
 
@@ -558,10 +554,9 @@ static void X11DRV_XDND_InsertXDNDData(int property, int format, void* data, uns
  *
  * Map XDND MIME format to windows clipboard format.
  */
-static int X11DRV_XDND_MapFormat(unsigned int property, unsigned char *data, int len)
+static void X11DRV_XDND_MapFormat(unsigned int property, unsigned char *data, int len)
 {
     void* xdata;
-    int count = 0;
 
     TRACE("%d: %s\n", property, data);
 
@@ -569,16 +564,13 @@ static int X11DRV_XDND_MapFormat(unsigned int property, unsigned char *data, int
     xdata = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, len);
     memcpy(xdata, data, len);
     X11DRV_XDND_InsertXDNDData(property, property, xdata, len);
-    count++;
 
     if (property == x11drv_atom(text_uri_list))
-        count += X11DRV_XDND_DeconstructTextURIList(property, data, len);
+        X11DRV_XDND_DeconstructTextURIList(property, data, len);
     else if (property == x11drv_atom(text_plain))
-        count += X11DRV_XDND_DeconstructTextPlain(property, data, len);
+        X11DRV_XDND_DeconstructTextPlain(property, data, len);
     else if (property == x11drv_atom(text_html))
-        count += X11DRV_XDND_DeconstructTextHTML(property, data, len);
-
-    return count;
+        X11DRV_XDND_DeconstructTextHTML(property, data, len);
 }
 
 




More information about the wine-cvs mailing list