Hans Leidekker : setupapi: Always return an empty list from SetupDiGetClassDevs.

Alexandre Julliard julliard at wine.codeweavers.com
Tue Feb 20 14:18:55 CST 2007


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

Author: Hans Leidekker <hans at it.vu.nl>
Date:   Tue Feb 20 12:03:31 2007 +0100

setupapi: Always return an empty list from SetupDiGetClassDevs.

---

 dlls/setupapi/devinst.c |   32 ++++++--------------------------
 1 files changed, 6 insertions(+), 26 deletions(-)

diff --git a/dlls/setupapi/devinst.c b/dlls/setupapi/devinst.c
index fbf6ded..e2a2dfe 100644
--- a/dlls/setupapi/devinst.c
+++ b/dlls/setupapi/devinst.c
@@ -648,7 +648,7 @@ SetupDiCreateDeviceInfoListExA(const GUID *ClassGuid,
  *                 with this list.
  *   hwndParent [I] hwnd needed for interface related actions.
  *   MachineName [I] name of machine to create emtpy DeviceInfoSet list, if NULL
- *                   local regestry will be used.
+ *                   local registry will be used.
  *   Reserved [I] must be NULL
  *
  * RETURNS
@@ -772,6 +772,7 @@ BOOL WINAPI SetupDiEnumDeviceInfo(
     if(info->cbSize < sizeof(*info))
         return FALSE;
 
+    SetLastError(ERROR_NO_MORE_ITEMS);
     return FALSE;
 }
 
@@ -1008,32 +1009,11 @@ HDEVINFO WINAPI SetupDiGetClassDevsW(
        HWND parent,
        DWORD flags)
 {
-    HDEVINFO ret = (HDEVINFO)INVALID_HANDLE_VALUE;
+    TRACE("%s %s %p 0x%08x\n", debugstr_guid(class), debugstr_w(enumstr), parent, flags);
 
-    TRACE("%s %s %p 0x%08x\n", debugstr_guid(class), debugstr_w(enumstr),
-     parent, flags);
-
-    if(flags & DIGCF_DEVICEINTERFACE)
-    {
-        if(!class)
-            SetLastError(ERROR_INVALID_PARAMETER);
-        else
-        {
-            /* WinXP always succeeds, returns empty list for unknown classes */
-            FIXME(": returning empty list\n");
-            ret = SetupDiCreateDeviceInfoList(class, parent);
-        }
-    }
-    else if (enumstr)
-        FIXME(": unimplemented for enumerator strings (%s)\n",
-         debugstr_w(enumstr));
-    else if (flags & DIGCF_ALLCLASSES)
-        FIXME(": unimplemented for DIGCF_ALLCLASSES\n");
-    else
-    {
-        FIXME("(%s): stub\n", debugstr_guid(class));
-    }
-    return ret;
+    /* WinXP always succeeds, returns empty list for unknown classes */
+    FIXME("returning empty list\n");
+    return SetupDiCreateDeviceInfoList(class, parent);
 }
 
 /***********************************************************************




More information about the wine-cvs mailing list