- Fix some error codes
- Add stubs for SetupDiGetClassImageList, SetupDiGetClassImageListExA/W,
SetupDiDestroyClassImageList
Modified: trunk/reactos/lib/setupapi/devinst.c
Modified: trunk/reactos/lib/setupapi/setupapi.spec
Modified: trunk/reactos/lib/setupapi/stubs.c
_____
Modified: trunk/reactos/lib/setupapi/devinst.c
--- trunk/reactos/lib/setupapi/devinst.c 2005-11-20 20:18:00 UTC
(rev 19385)
+++ trunk/reactos/lib/setupapi/devinst.c 2005-11-20 20:19:05 UTC
(rev 19386)
@@ -2774,7 +2774,7 @@
else
{
ERR("Invalid Flags parameter!\n");
- SetLastError(ERROR_INVALID_PARAMETER);
+ SetLastError(ERROR_INVALID_FLAGS);
return INVALID_HANDLE_VALUE;
}
@@ -3805,7 +3805,7 @@
else if (CreationFlags & ~(DICD_GENERATE_ID |
DICD_INHERIT_CLASSDRVS))
{
TRACE("Unknown flags: 0x%08lx\n", CreationFlags &
~(DICD_GENERATE_ID | DICD_INHERIT_CLASSDRVS));
- SetLastError(ERROR_INVALID_PARAMETER);
+ SetLastError(ERROR_INVALID_FLAGS);
}
else
{
@@ -4706,7 +4706,7 @@
else if (OpenFlags & ~(DIOD_CANCEL_REMOVE |
DIOD_INHERIT_CLASSDRVS))
{
TRACE("Unknown flags: 0x%08lx\n", OpenFlags &
~(DIOD_CANCEL_REMOVE | DIOD_INHERIT_CLASSDRVS));
- SetLastError(ERROR_INVALID_PARAMETER);
+ SetLastError(ERROR_INVALID_FLAGS);
}
else if (DeviceInfoData && DeviceInfoData->cbSize !=
sizeof(SP_DEVINFO_DATA))
SetLastError(ERROR_INVALID_USER_BUFFER);
@@ -4755,6 +4755,8 @@
RegCloseKey(hEnumKey);
if (rc != ERROR_SUCCESS)
{
+ if (rc == ERROR_FILE_NOT_FOUND)
+ rc = ERROR_NO_SUCH_DEVINST;
SetLastError(rc);
return FALSE;
}
_____
Modified: trunk/reactos/lib/setupapi/setupapi.spec
--- trunk/reactos/lib/setupapi/setupapi.spec 2005-11-20 20:18:00 UTC
(rev 19385)
+++ trunk/reactos/lib/setupapi/setupapi.spec 2005-11-20 20:19:05 UTC
(rev 19386)
@@ -291,7 +291,7 @@
@ stub SetupDiDeleteDevRegKey
@ stdcall SetupDiDeleteDeviceInfo(long ptr)
@ stub SetupDiDeleteDeviceInterfaceData
-@ stub SetupDiDestroyClassImageList
+@ stdcall SetupDiDestroyClassImageList(ptr)
@ stdcall SetupDiDestroyDeviceInfoList(long)
@ stdcall SetupDiDestroyDriverInfoList(long ptr long)
@ stub SetupDiDrawMiniIcon
@@ -313,9 +313,9 @@
@ stdcall SetupDiGetClassDevsExW(ptr wstr ptr long ptr wstr ptr)
@ stdcall SetupDiGetClassDevsW(ptr ptr long long)
@ stub SetupDiGetClassImageIndex
-@ stub SetupDiGetClassImageList
-@ stub SetupDiGetClassImageListExA
-@ stub SetupDiGetClassImageListExW
+@ stdcall SetupDiGetClassImageList(ptr)
+@ stdcall SetupDiGetClassImageListExA(ptr str ptr)
+@ stdcall SetupDiGetClassImageListExW(ptr wstr ptr)
@ stub SetupDiGetClassInstallParamsA
@ stub SetupDiGetClassInstallParamsW
@ stub SetupDiGetDeviceInfoListClass
_____
Modified: trunk/reactos/lib/setupapi/stubs.c
--- trunk/reactos/lib/setupapi/stubs.c 2005-11-20 20:18:00 UTC (rev
19385)
+++ trunk/reactos/lib/setupapi/stubs.c 2005-11-20 20:19:05 UTC (rev
19386)
@@ -175,3 +175,48 @@
FIXME ("Stub %p\n",FileLogHandle);
return TRUE;
}
+
+
+/**********************************************************************
*
+ * SetupDiGetClassImageList(SETUPAPI.@)
+ */
+BOOL WINAPI SetupDiGetClassImageList(PSP_CLASSIMAGELIST_DATA
ClassImageListData)
+{
+ FIXME ("Stub %p\n", ClassImageListData);
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
+}
+
+
+/**********************************************************************
*
+ * SetupDiGetClassImageListExA(SETUPAPI.@)
+ */
+BOOL WINAPI SetupDiGetClassImageListExA(PSP_CLASSIMAGELIST_DATA
ClassImageListData,
+ PCSTR MachineName, PVOID
Reserved)
+{
+ FIXME ("Stub %p %s %p\n", ClassImageListData,
debugstr_a(MachineName), Reserved);
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
+}
+
+
+/**********************************************************************
*
+ * SetupDiGetClassImageListExW(SETUPAPI.@)
+ */
+BOOL WINAPI SetupDiGetClassImageListExW(PSP_CLASSIMAGELIST_DATA
ClassImageListData,
+ PCWSTR MachineName, PVOID
Reserved)
+{
+ FIXME ("Stub %p %s %p\n", ClassImageListData,
debugstr_w(MachineName), Reserved);
+ SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+ return FALSE;
+}
+
+
+/**********************************************************************
*
+ * SetupDiDestroyClassImageList(SETUPAPI.@)
+ */
+BOOL WINAPI SetupDiDestroyClassImageList(PSP_CLASSIMAGELIST_DATA
ClassImageListData)
+{
+ FIXME ("Stub %p\n", ClassImageListData);
+ return TRUE;
+}
Show replies by date