Vitaliy Margolen : dinput: Don' t copy no longer used user data format object array.

Alexandre Julliard julliard at wine.codeweavers.com
Thu Jan 11 05:34:07 CST 2007


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

Author: Vitaliy Margolen <wine-patches at kievinfo.com>
Date:   Tue Jan  9 13:45:00 2007 -0700

dinput: Don't copy no longer used user data format object array.

---

 dlls/dinput/device.c |   52 --------------------------------------------------
 1 files changed, 0 insertions(+), 52 deletions(-)

diff --git a/dlls/dinput/device.c b/dlls/dinput/device.c
index 217618a..3a32ca5 100644
--- a/dlls/dinput/device.c
+++ b/dlls/dinput/device.c
@@ -288,8 +288,6 @@ void release_DataFormat(DataFormat * for
     format->dt = NULL;
     HeapFree(GetProcessHeap(), 0, format->offsets);
     format->offsets = NULL;
-    if (format->user_df)
-        HeapFree(GetProcessHeap(), 0, format->user_df->rgodf);
     HeapFree(GetProcessHeap(), 0, format->user_df);
     format->user_df = NULL;
 }
@@ -300,48 +298,6 @@ inline LPDIOBJECTDATAFORMAT dataformat_t
     return (LPDIOBJECTDATAFORMAT)((LPBYTE)df->rgodf + idx * df->dwObjSize);
 }
 
-/* Make all instances sequential */
-static void calculate_ids(LPDIDATAFORMAT df)
-{
-    int i, axis = 0, pov = 0, button = 0;
-    int axis_base, pov_base, button_base;
-    DWORD type;
-
-    /* Make two passes over the format. The first counts the number
-     * for each type and the second sets the id */
-    for (i = 0; i < df->dwNumObjs; i++)
-    {
-        type = DIDFT_GETTYPE(df->rgodf[i].dwType);
-        if      (type & DIDFT_AXIS)   axis++;
-        else if (type & DIDFT_POV)    pov++;
-        else if (type & DIDFT_BUTTON) button++;
-    }
-
-    axis_base   = 0;
-    pov_base    = axis_base + axis;
-    button_base = pov_base + pov;
-    axis = pov = button = 0;
-
-    for (i = 0; i < df->dwNumObjs; i++)
-    {
-        type = DIDFT_GETTYPE(df->rgodf[i].dwType);
-        if (type & DIDFT_AXIS)
-        {
-            type |= DIDFT_MAKEINSTANCE(axis_base + axis++);
-            TRACE("axis type = 0x%08x\n", type);
-        } else if (type & DIDFT_POV)
-        {
-            type |= DIDFT_MAKEINSTANCE(pov_base + pov++);
-            TRACE("POV type = 0x%08x\n", type);
-        } else if (type & DIDFT_BUTTON)
-        {
-            type |= DIDFT_MAKEINSTANCE(button_base + button++);
-            TRACE("button type = 0x%08x\n", type);
-        }
-        df->rgodf[i].dwType = type;
-    }
-}
-
 HRESULT create_DataFormat(LPCDIDATAFORMAT asked_format, DataFormat *format)
 {
     DataTransform *dt;
@@ -363,10 +319,6 @@ HRESULT create_DataFormat(LPCDIDATAFORMA
         goto failed;
     memcpy(format->user_df, asked_format, asked_format->dwSize);
 
-    if (!(format->user_df->rgodf = HeapAlloc(GetProcessHeap(), 0, asked_format->dwNumObjs*asked_format->dwObjSize)))
-        goto failed;
-    memcpy(format->user_df->rgodf, asked_format->rgodf, asked_format->dwNumObjs*asked_format->dwObjSize);
-
     TRACE("Creating DataTransform :\n");
     
     for (i = 0; i < format->wine_df->dwNumObjs; i++)
@@ -469,8 +421,6 @@ HRESULT create_DataFormat(LPCDIDATAFORMA
 
     HeapFree(GetProcessHeap(), 0, done);
 
-    /* Last step - reset all instances of the new format */
-    calculate_ids(format->user_df);
     return DI_OK;
 
 failed:
@@ -479,8 +429,6 @@ failed:
     format->dt = NULL;
     HeapFree(GetProcessHeap(), 0, format->offsets);
     format->offsets = NULL;
-    if (format->user_df)
-        HeapFree(GetProcessHeap(), 0, format->user_df->rgodf);
     HeapFree(GetProcessHeap(), 0, format->user_df);
     format->user_df = NULL;
 




More information about the wine-cvs mailing list