Commit graph

1815 commits

Author SHA1 Message Date
winesync c8be1ae834
[WINESYNC] setupapi: Implement SetupAddInstallSectionToDiskSpaceList.
wine-staging patch by Michael Müller <michael@fds-team.de>
2024-02-20 16:41:19 +01:00
winesync dd0c4303a2
[WINESYNC] setupapi: ImplementSetupAddSectionToDiskSpaceList.
wine-staging patch by Michael Müller <michael@fds-team.de>
2024-02-20 16:41:18 +01:00
winesync 29c1323f00
[WINESYNC] setupapi: Ignore deletion of added files in SetupAddToDiskSpaceList.
wine-staging patch by Michael Müller <michael@fds-team.de>
2024-02-20 16:41:17 +01:00
winesync 3ad50272d5
[WINESYNC] setupapi: Implement SetupQueryDrivesInDiskSpaceList.
wine-staging patch by Michael Müller <michael@fds-team.de>

+ Add the .spec exports.

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2024-02-20 16:41:16 +01:00
winesync 492011e956
[WINESYNC] setupapi: Implement SetupAddToDiskSpaceList.
wine-staging patch by Michael Müller <michael@fds-team.de>
2024-02-20 16:41:15 +01:00
winesync e02150ffe1
[WINESYNC] setupapi: Create the registry value if it doesn't exist in append_multi_sz_value().
wine commit id 38e36e8fdaf6dc682ce5af7b5b00cb795fffd967 by Zebediah Figura <zfigura@codeweavers.com>
2024-02-20 16:41:10 +01:00
winesync 66a7ba0218
[WINESYNC] setupapi: Fail installation when trying to append to a registry value of the wrong type.
wine commit id 0ab56b88dfdca442ab0820eacc14f6397f628924 by Zebediah Figura <zfigura@codeweavers.com>
2024-02-20 16:41:09 +01:00
winesync 635e77759f
[WINESYNC] setupapi/tests: Add tests for FLG_ADDREG_APPEND.
wine commit id d7c8279c08c25e2afddb33184522386e928d5497 by Zebediah Figura <zfigura@codeweavers.com>
2024-02-20 16:41:08 +01:00
winesync 9d592a7e0c
[WINESYNC] setupapi/tests: Don't test function directly when reporting GetLastError().
wine commit id 4b09ed1486b4c880c7ed1cbbfd3d9b1335f4d4ab by André Zwing <nerv@dawncrow.de>
2024-02-20 16:41:07 +01:00
winesync cd252d5703
[WINESYNC] setupapi: Move prototypes not in Windows's setupapi.h to setupapi_private.h.
And delete the ones we don't need.

wine commit id 1172e66e5b7fa96decf89f8866e71b77e5773ec7 by Alex Henrie <alexhenrie24@gmail.com>

+ ReactOS: Private exports prototypes are added in sdk setupapi_undoc.h

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2024-02-20 16:41:04 +01:00
winesync 5369aafbc0
[WINESYNC] setupapi: Fill the required size in SetupDiGetDeviceInterfaceDetail() also on success.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53387

wine commit id d15262e464ba3536567ad73f68d95e6b7f88f3aa by Zebediah Figura <zfigura@codeweavers.com>
2024-02-20 16:41:02 +01:00
winesync 060d6f2482
[WINESYNC] setupapi: Correctly calculate the required size in SetupDiGetDeviceInterfaceDetailA().
Don't include the null terminator twice.

wine commit id 5711f03e8479936ac5e3bc71ba7987f6b7cb5586 by Zebediah Figura <zfigura@codeweavers.com>
2024-02-20 16:41:01 +01:00
winesync fef704dfdf
[WINESYNC] setupapi/tests: Add more tests for buffer size handling in SetupDiGetDeviceInterfaceDetail().
wine commit id 60af599bb916260e8bb8a2f5d0111815f741fef4 by Zebediah Figura <zfigura@codeweavers.com>
2024-02-20 16:41:00 +01:00
winesync d94bf49682
[WINESYNC] uuid: Add devguid.h.
Needed to compile Tera Term.

wine commit id e72a16b57f66b63a16bb3d1619ac4d42632cb141 by Alex Henrie <alexhenrie24@gmail.com>
2024-02-20 16:40:59 +01:00
winesync 515a47a67b
[WINESYNC] setupapi/tests: Enable compilation with long types.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b73e3102009cc7151ab58321800aeded24c1307f by Eric Pouech <eric.pouech@gmail.com>
2024-02-20 16:40:57 +01:00
winesync 20c488b2b3
[WINESYNC] setupapi/tests: Use correct integral type.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0e4c108490db8d1c7b3c5d016979ace327d2c8ab by Eric Pouech <eric.pouech@gmail.com>
2024-02-20 16:40:56 +01:00
winesync 59a3f67dea
[WINESYNC] setupapi: Also handle DelFiles and RenFiles directives in SetupInstallFilesFromInfSection().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 506ce2ae6bc2fc1395da402a8ed0de4527fa7e24 by Zebediah Figura <zfigura@codeweavers.com>
2024-02-20 16:40:53 +01:00
winesync 0fa54f958b
[WINESYNC] setupapi: Use the source path if the target path is missing in SetupQueueRename().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 47111ff6b08dc019456d0f3c910a924deb1267d2 by Zebediah Figura <zfigura@codeweavers.com>
2024-02-20 16:40:52 +01:00
winesync 797272c06f
[WINESYNC] setupapi/tests: Add more tests for SetupInstallFilesFromInfSection().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 63cdb0b91a80d6e4bfd7528131157a3f20f2de6f by Zebediah Figura <zfigura@codeweavers.com>
2024-02-20 16:40:51 +01:00
winesync b9ef0112dd
[WINESYNC] setupapi/tests: Test queuing the same copy operation twice.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id ef77468b5e041d55db3821778665a2a406ed72ea by Zebediah Figura <zfigura@codeweavers.com>
2024-02-20 16:40:50 +01:00
winesync dcf1e1e7d6
[WINESYNC] setupapi/tests: Avoid "misleading indentation" warnings.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 87acd4021848afffc4c2060c0494db1045c060d6 by Fabian Maurer <dark.shadow4@web.de>
2024-02-20 16:40:48 +01:00
winesync 8e6e2b7d85
[WINESYNC] setupapi/tests: Add some service installation flags tests.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 919ee014b93ba633ead2cfe44bcf475dbda55ecd by Rémi Bernon <rbernon@codeweavers.com>
2024-02-20 16:40:47 +01:00
winesync 58ea8d9390
[WINESYNC] setupapi/tests: Add possible test_need_media results for Win10.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 68b83a8a093d59d9ee085574c4c1ef64e6b28807 by Rémi Bernon <rbernon@codeweavers.com>
2024-02-20 16:40:46 +01:00
winesync d572469aa8
[WINESYNC] setupapi: Use lowercase device paths.
Some games are doing case sensitive matches on the device paths obtained from
Setup API and expect them to be lowercase.

This fixes Virginia not being able to discover DualShock 4.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 30a026d2454b2de93257e9eb895573ce8c56dc05 by Arkadiusz Hiler <ahiler@codeweavers.com>
2024-02-20 16:40:45 +01:00
winesync f8c0728e48
[WINESYNC] setupapi/tests: Add display device interface tests.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5030f4cf26c31bc709d6565182b51af1165953a6 by Zhiyi Zhang <zzhang@codeweavers.com>

SYNC NOTE: These display GUIDs are Vista+, so temporarily elevate
NTDDI_VERSION to Vista.

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2024-02-20 16:40:44 +01:00
winesync 3a4c13e32b
[WINESYNC] setupapi: Rank drivers according to their id match.
And as described on MSDN "Driver Rank Example".

In order to safely remove the hardcoded XBox gamepad ID list from
winebus.sys, and list their hardware IDs in the (future) xinput.sys
driver INF.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cfddd2c1e24fc03ad570f771093fd08bbf8b9575 by Rémi Bernon <rbernon@codeweavers.com>
2024-02-20 16:40:43 +01:00
winesync 325156fea5
[WINESYNC] setupapi: Create only one driver per driver id match.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id eb94d7aea85b13197f8d678baeca414adc05aaed by Rémi Bernon <rbernon@codeweavers.com>
2024-02-20 16:40:42 +01:00
winesync 4db2d8c197
[WINESYNC] setupapi/tests: Add more driver / device id match tests.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 9b2a25232312a073f288d683d48f9366d54654d3 by Rémi Bernon <rbernon@codeweavers.com>
2024-02-20 16:40:42 +01:00
winesync f620cb39c6
[WINESYNC] setupapi: Remove all device interfaces in SetupDiRemoveDevice().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 0b8c1d69e66094d72e00f30f370ec3f69fb43dfd by Zebediah Figura <z.figura12@gmail.com>
2024-02-20 16:40:41 +01:00
winesync 909b686cf2
[WINESYNC] setupapi: Pass the full cabinet path as the second parameter to SPFILENOTIFY_FILEINCABINET.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 8cb6e9585eefd4b0c0257f549d738f6a10f0d097 by Zebediah Figura <z.figura12@gmail.com>
2024-02-20 16:40:39 +01:00
winesync 60bf103205
[WINESYNC] setupapi: Set the Source field to the full cabinet path for SPFILENOTIFY_FILEEXTRACTED.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id b67deb0d2f03f7963f3247e4a4477b668a7ace35 by Zebediah Figura <z.figura12@gmail.com>
2024-02-20 16:40:38 +01:00
winesync 7af2e21724
[WINESYNC] setupapi: Set the CabinetFile field to the name of the next cabinet.
Verified through manual testing.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 811da7bf1a37fc4e3851971a7e96e28b445efebc by Zebediah Figura <z.figura12@gmail.com>
2024-02-20 16:40:37 +01:00
winesync 8363ecd013
[WINESYNC] setupapi/tests: Expand tests for SetupIterateCabinet().
Partially based on a patch by Sebastian Lackner.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 978cc1d856c7f62191bf6b1b64ddecf737ea5eea by Zebediah Figura <z.figura12@gmail.com>
2024-02-20 16:40:36 +01:00
winesync 6309808b5d
[WINESYNC] setupapi: Treat trailing \0 in field values same way as trailing spaces.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5b7fac05d95fd2cd0c274f1342fb96d0f7152848 by Dmitry Timoshkov <dmitry@baikal.ru>
2024-02-20 16:40:27 +01:00
winesync 4742f55bc2
[WINESYNC] setupapi/tests: Add explicit field for inf contents size.
To make testing embedded NULs possible.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 43115a74f94293994904c9857996e9576dc3a8eb by Dmitry Timoshkov <dmitry@baikal.ru>
2024-02-20 16:40:26 +01:00
winesync 998e61a78d
[WINESYNC] setupapi: Clear error on SetupDiDestroyDeviceInfoList success.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49332
Signed-off-by: Jeff Smith <whydoubt@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id babb1019d1a6adaa5a52398c192b55a083327f45 by Jeff Smith <whydoubt@gmail.com>
2024-02-20 16:40:25 +01:00
winesync c413eecec7
[WINESYNC] setupapi/tests: Add error tests for SetupDiDestroyDeviceInfoList.
Signed-off-by: Jeff Smith <whydoubt@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id f9028142d1e57322f893d7e47d846f72a8c6c72c by Jeff Smith <whydoubt@gmail.com>
2024-02-20 16:40:25 +01:00
winesync 07366f19d6
[WINESYNC] setupapi/tests: Change return values from coinst functions.
As co_error and class_error both return 0xdeadbeef, use of 0xdeadbeef as
a canary value as well can lead to ambiguous tests results.

Signed-off-by: Jeff Smith <whydoubt@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id cfde18c4904cd76eff40336e064cba86b9831633 by Jeff Smith <whydoubt@gmail.com>
2024-02-20 16:40:24 +01:00
winesync e476f8a699
[WINESYNC] setupapi: Store the original INF file path in a .pnf file.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 547d62da228a3846cf058bcc71fc8974356a96b8 by Zebediah Figura <z.figura12@gmail.com>
2024-02-20 16:40:23 +01:00
winesync 6f77f59910
[WINESYNC] setupapi: Implement SetupDiGetDriverInfoDetail().
Needed by the Windows Device Framework co-installer.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 5cff8c9e2e926edcc74202fa3354c2a4bb5ebef3 by Zebediah Figura <z.figura12@gmail.com>
2024-02-20 16:40:22 +01:00
winesync 3c2e5a5514
[WINESYNC] setupapi: Implement SetupDiGetSelectedDriver().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48639
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 6971dfcfc21e887e4b5724d4f32e29d012e1b5be by Zebediah Figura <z.figura12@gmail.com>
2024-02-20 16:40:21 +01:00
winesync ce22cbd9f3
[WINESYNC] setupapi/tests: Fix some format-overflow warnings.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 1bd961219198e5c6e3ac33fffd29eb281f10448f by Rémi Bernon <rbernon@codeweavers.com>
2024-02-20 16:40:19 +01:00
winesync 72ed870256
[WINESYNC] setupapi: Initialize COM if necessary when registering DLLs.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e75d5b8dc7e4751ddce84a379306a5deb89ca29b by Zebediah Figura <zfigura@codeweavers.com>
2024-02-20 16:40:16 +01:00
winesync e0ca112dac
[WINESYNC] setupapi/tests: Add some tests for COM self-registration.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id e0b5da7b34e9f38990939bd20cf4b2fa749c3f6e by Zebediah Figura <zfigura@codeweavers.com>
2024-02-20 16:40:15 +01:00
winesync bee25a0ae2
[WINESYNC] setupapi: Implement SetupDiOpenDeviceInterfaceRegKey().
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4a3cd01bd150c27d7fd40d04fc92b173f2f988af by Zhiyi Zhang <zzhang@codeweavers.com>
2024-02-20 16:40:13 +01:00
winesync 62ad832599
[WINESYNC] guiddef.h: Remove GUID_NULL declaration.
It's declared in cguid.h with proper extern "C".

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id c041605b0074e6b12e5ea1df0cc645e772a220a7 by Jacek Caban <jacek@codeweavers.com>
2024-02-20 16:40:12 +01:00
winesync 072e8524a0
[WINESYNC] setupapi/tests: Add test for IDF_CHECKFIRST and SetupPromptForDiskA/W.
With modifications from Hermes Belusca-Maito.

Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 14d782d18ac61baac2fc479c2bb19fb45cc98883 by Michael Müller <michael@fds-team.de>
2024-02-20 16:40:11 +01:00
winesync 771d6e8340
[WINESYNC] setupapi/tests: Remove an unused variable.
Signed-off-by: Thomas Faber <thomas.faber@reactos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id dc968dae42e3b3162e2767ed32b0f91ae9b23ad3 by Thomas Faber <thomas.faber@reactos.org>
2024-02-20 16:40:09 +01:00
winesync 8f3c458350
[WINESYNC] setupapi: Set device SPDRP_CLASS registry property in create_device().
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 288a6625ad0177e258a0db1da166d292ff420b1e by Zhiyi Zhang <zzhang@codeweavers.com>
2024-02-20 16:40:06 +01:00
winesync 08931ff67d
[WINESYNC] setupapi/tests: Add default device registry property tests.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 4fe3d7e220225ddd57ef0acd9142ef8437cdb9ca by Zhiyi Zhang <zzhang@codeweavers.com>
2024-02-20 16:40:05 +01:00