Zebediah Figura
9ccf1dd88b
setupapi: Avoid passing a NULL source filename to SetupQueueDefaultCopy().
...
Fixes a regression introduced by 705d3eed86
.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47138
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-08 08:31:20 -05:00
Zebediah Figura
c65d98065c
setupapi: Add magic bytes to struct file_queue and validate them in SetupCloseFileQueue().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=12332
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-03 16:34:42 +02:00
Zebediah Figura
d5a6a2675c
setupapi/tests: Add tests for source media path resolution.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:37 +02:00
Zebediah Figura
3e5c9798a8
setupapi: Implement source media path resolution.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47107
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:37 +02:00
Zebediah Figura
cfe4ce28eb
setupapi: Use the source file name if the destination file name is NULL.
...
Do not do the reverse. Windows crashes if SourceFilename is NULL.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:37 +02:00
Zebediah Figura
db8e2388d9
setupapi: Properly null-terminate the path in concat_W().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:37 +02:00
Zebediah Figura
e8c4dbcec2
setupapi: Implement W -> A mapping of SPFILENOTIFY_NEEDMEDIA.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:37 +02:00
Zebediah Figura
46dc6dddf3
setupapi: Implement SetupDefaultQueueCallback(SPFILENOTIFY_NEEDMEDIA).
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:36 +02:00
Zebediah Figura
31bb0097ad
setupapi: Keep track of source media in a separate list.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:36 +02:00
Zebediah Figura
3cb621e6ca
setupapi: Separate the entire copy operation into a helper function.
...
So as to centralize SPFILENOTIFY_COPYERROR callbacks into one place.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:36 +02:00
Zebediah Figura
ee36f923c5
setupapi: Remove implementation for LayoutInf parameter of SP_FILE_COPY_PARAMS.
...
Tests demonstrate that the existing implementation is not correct, and I was
unable to find an arrangement of parameters such that it was respected on
Windows. Most likely it has to do with the undocumented parameters used in
the "master" C:\windows\inf\layout.inf.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:36 +02:00
Zebediah Figura
466b80786f
setupapi: Implement SetupQueueCopyIndirectA() on top of the W variant.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:36 +02:00
Zebediah Figura
705d3eed86
setupapi: Fill out all source file parameters in SetupQueueDefaultCopy().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:36 +02:00
Zebediah Figura
f9f25ee227
setupapi: Fill out all source file parameters in SetupQueueCopySection().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:36 +02:00
Zebediah Figura
cedbdf4387
setupapi: Avoid passing a NULL source root path to SetupQueueDefaultCopy() and SetupQueueCopySection().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:36 +02:00
Zebediah Figura
02df7eeb5b
setupapi/tests: Add some tests for SetupInstallFilesFromInfSection().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-01 22:46:52 +02:00
Zebediah Figura
2d13b6b74c
setupapi/tests: Avoid assert().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-01 22:46:52 +02:00
Zebediah Figura
fccb7552eb
setupapi: Extract individual files from cabinets.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-01 22:46:52 +02:00
Andrey Gusev
5466df6957
setupapi: Add DECLSPEC_HOTPATCH to SetupDiEnumDeviceInfo().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46971
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-23 23:50:45 +02:00
Alexandre Julliard
7204f0f67f
setupapi/tests: Avoid using snprintf().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-23 23:50:45 +02:00
Alexandre Julliard
510e746718
setupapi: Add support for installing PE builtins as fake dlls.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-22 14:08:18 +02:00
Zebediah Figura
5480031653
setupapi: Also check devices not in the set when using DICD_GENERATE_ID.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-01 11:33:05 +02:00
Zhiyi Zhang
1fa7782c08
setupapi: Check registered device duplicate in SetupDiCreateDeviceInfo().
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 11:50:15 +01:00
Zhiyi Zhang
7876234e3a
setupapi/tests: Add more SetupDiCreateDeviceInfo() tests.
...
SetupDiCreateDeviceInfo() should report last error
ERROR_DEVINST_ALREADY_EXISTS when an registered instance exists
when creating a device for an empty set.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 11:50:10 +01:00
Zhiyi Zhang
0b9b1cbf56
setupapi/tests: Add SetupDiOpenDeviceInfo() tests.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 11:50:07 +01:00
Zhiyi Zhang
17d58c93f3
setupapi: Implement SetupDiOpenDeviceInfoA().
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 11:50:01 +01:00
Zhiyi Zhang
cb5d191064
setupapi: Implement SetupDiOpenDeviceInfoW().
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 11:49:54 +01:00
Zhiyi Zhang
64c09819cf
setupapi: Set phantom value after device creation.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 11:49:04 +01:00
Zhiyi Zhang
35673c7e8e
setupapi/tests: Test phantom value after device creation.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-18 11:48:57 +01:00
Francois Gouget
9f2baf1dd4
setupapi/tests: Add a trailing '\n' to a couple of ok() calls.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-14 17:42:42 +01:00
Alistair Leslie-Hughes
96ab88e139
setupapi: Add SetupDiRegisterCoDeviceInstallers stub.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-07 19:19:50 +01:00
Alistair Leslie-Hughes
4d81d41899
setupapi: Add SetupDiInstallDeviceInterfaces.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45963
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-07 19:19:42 +01:00
Alistair Leslie-Hughes
343e486e83
setupapi: Added CM_Request_Device_EjectA/W stub.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45879
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-07 19:19:31 +01:00
Zebediah Figura
bb4a6da373
setupapi: Search for substituted strings in SetupFindNextMatchLine().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-26 20:49:37 +01:00
Zebediah Figura
8c12672b06
setupapi: Handle error translation in SetupDiCreateDevRegKey().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-25 12:51:21 +01:00
Zebediah Figura
922bc932c8
setupapi: Handle error translation in SetupDiDeleteDevRegKey().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-25 12:51:21 +01:00
Zebediah Figura
f703c7f22d
setupapi: Handle error translation in SetupDiOpenDevRegKey().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-25 12:51:21 +01:00
Zebediah Figura
486fffa45c
setupapi: Return the "Device Parameters" subkey for DIREG_DEV.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=21023
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-25 12:51:21 +01:00
Sven Baars
afe83a7bbe
setupapi: Add a missing return statement (Coverity).
...
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-20 15:53:18 +01:00
Vijay Kiran Kamuju
01b8a79595
setupapi: Add stub for CM_Get_Sibling.
...
Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-13 19:45:24 +01:00
Alexandre Julliard
d70d6b8486
setupapi/tests: Avoid sizeof in traces.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-06 20:26:25 +01:00
Zhiyi Zhang
307812c30d
setupapi: Implement SetupDiGetDevicePropertyW.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-05 10:30:51 +01:00
Zhiyi Zhang
afac1c405d
setupapi: Implement SetupDiSetDevicePropertyW.
...
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-05 10:30:49 +01:00
Zebediah Figura
7e4c1a2074
setupapi: Also remove the driver key in remove_device().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-23 17:40:26 +01:00
Zebediah Figura
00c8c27032
setupapi/tests: Create the setup class key before trying to create the driver key.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-23 17:40:24 +01:00
Zebediah Figura
dca175b256
setupapi: Don't use the devnode to allocate driver keys.
...
The devnode is a local handle, but driver keys should be unique to the
device. (Note that MSDN, confusingly, refers to this number as a "device
instance ID".)
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-23 17:40:21 +01:00
Zebediah Figura
e26f8464e9
setupapi: Store the path to the driver key in the device key.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-23 17:40:18 +01:00
Zhiyi Zhang
06a86134ab
setupapi/tests: Fix return value checking.
...
SetupDiCreateDeviceInfoList returns INVALID_HANDLE_VALUE(~0) on error
instead of NULL.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-18 10:24:44 +01:00
Alexandre Julliard
bcab6625ab
setupapi/tests: Fix a test failure on latest Windows 10.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-11 15:54:06 +01:00
Michael Müller
2d6704ba99
setupapi: Always return device info from SetupDiGetDeviceInterfaceDetail() if requested.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-06 08:57:42 +01:00