Author: hpoussin
Date: Mon May 29 13:36:26 2006
New Revision: 22102
URL:
http://svn.reactos.ru/svn/reactos?rev=22102&view=rev
Log:
Don't stop the search after the first driver found. Next ones may be better
Modified:
trunk/reactos/dll/win32/newdev/newdev.c
Modified: trunk/reactos/dll/win32/newdev/newdev.c
URL:
http://svn.reactos.ru/svn/reactos/trunk/reactos/dll/win32/newdev/newdev.c?r…
==============================================================================
--- trunk/reactos/dll/win32/newdev/newdev.c (original)
+++ trunk/reactos/dll/win32/newdev/newdev.c Mon May 29 13:36:26 2006
@@ -54,12 +54,12 @@
/* FIXME: InstallFlags bRebootRequired ignored! */
/* Check flags */
- /* FIXME: if (InstallFlags & ~(INSTALLFLAG_FORCE | INSTALLFLAG_READONLY |
INSTALLFLAG_NONINTERACTIVE))
+ if (InstallFlags & ~(INSTALLFLAG_FORCE | INSTALLFLAG_READONLY |
INSTALLFLAG_NONINTERACTIVE))
{
DPRINT("Unknown flags: 0x%08lx\n", InstallFlags & ~(INSTALLFLAG_FORCE |
INSTALLFLAG_READONLY | INSTALLFLAG_NONINTERACTIVE));
SetLastError(ERROR_INVALID_FLAGS);
goto cleanup;
- }*/
+ }
/* Enumerate all devices of the system */
DevInstData.hDevInfo = SetupDiGetClassDevsW(NULL, NULL, hwndParent, DIGCF_ALLCLASSES |
DIGCF_PRESENT);
@@ -374,7 +374,7 @@
if (SearchDriverRecursive(DevInstData, FullPath))
{
retval = TRUE;
- break;
+ /* We continue the search for a better driver */
}
}
else
@@ -392,14 +392,13 @@
if (SearchDriver(DevInstData, DirPath, NULL))
{
retval = TRUE;
- goto cleanup;
+ /* We continue the search for a better driver */
}
}
}
}
-cleanup:
if (hFindFile != INVALID_HANDLE_VALUE)
FindClose(hFindFile);
return retval;