Compare commits

..

176 Commits

Author SHA1 Message Date
Alistair Leslie-Hughes
0229597809 Release v10.19 2025-11-15 17:49:50 +11:00
Alistair Leslie-Hughes
3392f477c5 Fixed upstream
Commit b5ec5e6bcfff3dfb005e906a8002572788774b01.
2025-11-15 17:49:15 +11:00
Alistair Leslie-Hughes
e97aabbb86 Updated vkd3d-latest patchset 2025-11-15 16:50:06 +11:00
Elizabeth Figura
ed8a24d79b Rebase against fe1175af410d04f806dda770502d0476a8ccbef6. 2025-11-14 15:26:34 -06:00
Elizabeth Figura
2bf94fc85b Rebase against 76e7e90c3679766ac327b138e3269fb61ead6e4a. 2025-11-13 15:54:44 -06:00
Elizabeth Figura
3950dc0efe ntdll-Junction_Points: Remove support for making reparse points real symlinks.
This is not a priority upstream, and is unlikely to happen.
2025-11-12 11:30:25 -06:00
Elizabeth Figura
635849c3ed ntdll-Junction_Points: Remove hardcoded results for reparse point size and NtReadFile().
As tests show these are actually incorrect; reparse points can contain arbitrary data.
2025-11-12 11:30:25 -06:00
Elizabeth Figura
4ee9edf610 Rebase against 9250ecc5a6a64c73aada0ea751815412f7f00410. 2025-11-12 11:30:25 -06:00
Alistair Leslie-Hughes
514e3884c5 Rebase against 9250ecc5a6a64c73aada0ea751815412f7f00410. 2025-11-12 14:13:39 +11:00
Elizabeth Figura
ece1fa8409 Rebase against 7ca2f577e43a6ecea8c2362d347722f00ef14cb1. 2025-11-10 17:31:32 -06:00
Alistair Leslie-Hughes
e61b45155f Rebase against b448a8ba7b619c082f639f1b61987bf5c0f322fd. 2025-11-07 09:50:06 +11:00
Alistair Leslie-Hughes
66e568f047 Updated vkd3d-latest patchset
Squash and rebase.
2025-11-05 10:33:30 +11:00
Alistair Leslie-Hughes
ef9ef7bf9d Rebase against 839f8fc3e0302980772e1d31f5b761446cdf8406. 2025-11-05 10:27:02 +11:00
Elizabeth Figura
2d58cc0eb9 Rebase against 82275b13a24613947d1da00cd85209dbfaf5465f. 2025-11-03 17:58:34 -06:00
Alistair Leslie-Hughes
23267ac0b6 Release v10.18 2025-11-01 18:31:18 +11:00
Alistair Leslie-Hughes
c8c2492b13 Rebase against cd858d59d6532a0cf624ff1dabc57a370deb43bf. 2025-10-31 15:17:38 +11:00
Alistair Leslie-Hughes
6e5b36c9ee Rebase against bc5f39ebf5fa3e936ad8fea726441b88716724c4. 2025-10-31 07:05:53 +11:00
Alistair Leslie-Hughes
bbcdf55b0a Updated vkd3d-latest patchset 2025-10-30 07:44:02 +11:00
Alistair Leslie-Hughes
314769efdc Rebase against 38938bdb6f752cb68d13d833be97d0c524fe827e. 2025-10-28 10:29:18 +11:00
Alistair Leslie-Hughes
fa2f323344 Rebase against 606d2f48bf8149bf45153f11ef3501eece20762c. 2025-10-25 17:34:41 +11:00
Alistair Leslie-Hughes
0ce7cd10bf Rebase against 606d2f48bf8149bf45153f11ef3501eece20762c. 2025-10-25 12:06:45 +11:00
Alistair Leslie-Hughes
f12010f53d Rebase against ff187dc851c1d9f992049688a7e7190b83250ae4. 2025-10-24 10:28:06 +11:00
Alistair Leslie-Hughes
194b2de8dc Rebase against 833f57698015a9e0c9d0606d8a99254c36c9b9d8. 2025-10-24 08:11:18 +11:00
Alistair Leslie-Hughes
3a65c61aab Rebase against ff5b9971b3a1794043ecc75e639e91a8776e169b. 2025-10-22 11:58:27 +11:00
Alistair Leslie-Hughes
f686957b39 Release v10.17 2025-10-18 17:20:02 +11:00
Alistair Leslie-Hughes
d472acd179 Added wininet-proxy_username patchset 2025-10-18 16:02:56 +11:00
Alistair Leslie-Hughes
c9ec1b4c08 Updated vkd3d-latest patchset 2025-10-18 15:16:39 +11:00
Alistair Leslie-Hughes
588afb2427 Rebase against d62035da4aa91327c6e38a2c8a66b829eb0983ed. 2025-10-18 15:15:14 +11:00
Alistair Leslie-Hughes
efcf9f948e Rebase against d76b59d5c021ea5da49d1e1430c1d33bee874418. 2025-10-17 09:57:01 +11:00
Alistair Leslie-Hughes
31b114a4e3 Added d3drm-starwars patchset
This stops the crash but doesn't show the battle at all.

Patchset shows what is needed (as a minimum), to be
implemented in order for it to work correctly.
2025-10-16 17:40:42 +11:00
Alistair Leslie-Hughes
866ca1e24a Added iccvid_decomp_begin patchset 2025-10-16 17:30:02 +11:00
Alistair Leslie-Hughes
79283b4b8e Updated vkd3d-latest patchset 2025-10-16 17:29:22 +11:00
Elizabeth Figura
7c674a599b Rebase against 486f33ee64121d0331fb3e943791ec42bd98ef51. 2025-10-15 16:46:31 -05:00
Elizabeth Figura
ec458fc7ae Rebase against 2827471c57299793d8e0868679184f8d762a5309. 2025-10-09 16:25:30 -05:00
Alistair Leslie-Hughes
6f356eb1f5 Rebase against c1bafaa02329442df1aba576e2884c0ab699f76e. 2025-10-09 09:42:39 +11:00
Alistair Leslie-Hughes
672a2bae70 Rebase against dc34fef45d491516fa8eaee45b2ae40faa7b0bfe. 2025-10-08 08:50:17 +11:00
Elizabeth Figura
52f1f289f0 Rebase against 7e62997aff603a69e67d270465088ff2ac3132d4. 2025-10-06 16:45:13 -05:00
Alistair Leslie-Hughes
265554a9da Release v10.16 2025-10-04 19:48:02 +10:00
Elizabeth Figura
38d4b8ca78 Rebase against 01269452e0fbb1f081d506bd64996590a553e2b9. 2025-10-03 16:39:15 -05:00
Elizabeth Figura
9c06e8eab3 Rebase against 192d335facd5ec6ff2b9acec615efff16385a416. 2025-10-01 16:58:46 -05:00
Elizabeth Figura
78a888cd3d user32-FlashWindowEx: Remove patch.
This was fixed upstream by d4b2865eb7f2612e52b3fee6ae121e59c2d28296.

Although some parts of the patch still apply and are orthogonal to the change, tests show they're not correct either.
2025-10-01 15:44:21 -05:00
Elizabeth Figura
1f7871a75c user32-ListBox_Size: Remove patch set.
Upstreamed by 57791a5b1a5429a31711f4cd746846d8fee4b798; omitted from the last rebase.
2025-09-30 20:10:45 -05:00
Alistair Leslie-Hughes
815194acd6 Updated vkd3d-latest patchset 2025-10-01 07:52:38 +10:00
Alistair Leslie-Hughes
7e9e516c71 Rebase against bcd3e1a4de9d6efb177b932a937412bfb962d149. 2025-10-01 07:52:38 +10:00
Alistair Leslie-Hughes
ea30d81923 Updated vkd3d-latest patchset 2025-09-30 09:16:55 +10:00
Alistair Leslie-Hughes
a8cce16566 Rebase against 7fb9d22a7932aaf32383ecebb59487d57a503754. 2025-09-30 07:46:22 +10:00
Elizabeth Figura
20ba4773d6 Rebase against 8da914b27c9939ecf511001bcac1a6c74e7edde0. 2025-09-21 16:54:15 -05:00
Alistair Leslie-Hughes
64988e15df Rebase against fc70990d579a74974c6e4f1550f892188114f5cf. 2025-09-20 09:13:49 +10:00
Alistair Leslie-Hughes
1a739efaa4 Updated vkd3d-latest patchset 2025-09-20 09:13:49 +10:00
Alistair Leslie-Hughes
27156e4a6e Updated d3dx11_43-D3DX11CreateTextureFromMemory patchset
Thanks Connor McAdams.
2025-09-20 07:17:19 +10:00
Alistair Leslie-Hughes
112b476921 Added d3dx9-setrawvalue patchset 2025-09-20 07:14:13 +10:00
Alistair Leslie-Hughes
2465e06751 Updated vkd3d-latest patchset 2025-09-19 09:30:04 +10:00
Elizabeth Figura
0e9c421030 Rebase against 0abb419016e3a38e36ba0bdfe9c0497a29a86fcf. 2025-09-18 17:22:54 -05:00
Elizabeth Figura
04570cc4c7 Rebase against 915a1e6fc76943913a77b71446c72dc13eadc1a0. 2025-09-17 16:46:56 -05:00
Elizabeth Figura
c062a34be3 Rebase against 58407c404938f5e83a4ab2a6fa7b7a75ad2b5e85. 2025-09-16 17:03:19 -05:00
Elizabeth Figura
42ab95dc1f ntdll-NtSetLdtEntries: Restore the parts that were not yet upstreamed. 2025-09-16 13:45:16 -05:00
Alistair Leslie-Hughes
e1dea6b9ac vkd3d-latest patchset
Squash
2025-09-16 08:43:37 +10:00
Alistair Leslie-Hughes
74477d5d72 Rebase against 7d26649f6375cd8bf765405237c85933c58e8de8. 2025-09-16 08:37:45 +10:00
Alistair Leslie-Hughes
978b387c1c Release v10.15 2025-09-13 15:52:12 +10:00
Alistair Leslie-Hughes
01d377c9ef d3dx11_43-D3DX11CreateTextureFromMemory - Rebased and Enabled
Fix crashes with the HighFleet (patch 2)
Fix drawing issue with Puyo Puyo Tetris (patch 3).
2025-09-13 08:18:38 +10:00
Elizabeth Figura
317665ee20 Rebase against e3c9d3ac76b223073253667e2447e1cbc407ac97. 2025-09-11 17:44:08 -05:00
Alistair Leslie-Hughes
3d1b6a4bc0 Added msxml3_encode_gb2312 patchset 2025-09-11 09:48:29 +10:00
Alistair Leslie-Hughes
e33772ec34 Rebase against 92e6124a9855b1c398b2822c2679df4ec3e38b83. 2025-09-11 08:23:25 +10:00
Alistair Leslie-Hughes
342cfbc5de Updated vkd3d-latest patchset 2025-09-11 07:01:32 +10:00
Alistair Leslie-Hughes
91b4afcd38 Rebase against c20abdb856139f156ceab0afbb8454e0ad79f0a4. 2025-09-10 07:47:02 +10:00
Alistair Leslie-Hughes
5f55fc20dc Updated winedevice-Default_Drivers patchset
Corrected setting subsystem.
Updated Makefile to include .spec file.
2025-09-09 18:40:22 +10:00
Alistair Leslie-Hughes
3714d05e91 Updated odbc32-fixes patchset 2025-09-08 09:54:01 +10:00
Alistair Leslie-Hughes
39778538c2 Added d3dx9_animation_TrackDesc patchset 2025-09-07 07:47:55 +10:00
Elizabeth Figura
0c15cda214 Rebase against e6df334f178a9b0058fdee0326c5901082efd0d2. 2025-09-06 16:20:19 -05:00
Alistair Leslie-Hughes
858b0697d2 Updated vkd3d-latest patchset 2025-09-03 08:10:33 +10:00
Alistair Leslie-Hughes
0394bb10be Rebase against a3385359f06e291a46364381b2a4ddea81d7cc45. 2025-09-02 07:45:17 +10:00
Alistair Leslie-Hughes
e004127f41 Release v10.14 2025-08-30 10:40:08 +10:00
Alistair Leslie-Hughes
5cba568c93 Updated vkd3d-latest patchset 2025-08-30 10:30:19 +10:00
Elizabeth Figura
e2610f8a45 Rebase against 5fd9826b8cdcb9130b0bf6943a2a5cd7c7499370. 2025-08-28 16:19:59 -05:00
Alistair Leslie-Hughes
e250393ba4 Rebase against 4a7d6576f0a8507097e3894a579061b568db6ac6. 2025-08-28 07:33:47 +10:00
Alistair Leslie-Hughes
ce66dea197 Rebase against 7dcdd7a6549793e8a6469816a5c25226e2d73e9c. 2025-08-24 09:05:15 +10:00
Alistair Leslie-Hughes
7cd95e9f79 Updated vkd3d-latest patchset
Squashed.

Updated to vkd3d 1.17+
2025-08-22 08:09:57 +10:00
Alistair Leslie-Hughes
c605cf204a Rebase against 288a40d05c8cddf62d0b12524a90d2d4f5ce114d. 2025-08-20 07:53:40 +10:00
Alistair Leslie-Hughes
a8f798fc3c Rebase against 2e4974af42a96dfcd426be5e40faecd9853401d1. 2025-08-19 07:45:52 +10:00
Alistair Leslie-Hughes
a8a6d7b0ed Release v10.13 2025-08-16 13:28:15 +10:00
Alistair Leslie-Hughes
f09ef9a3ca Added oleaut32_typelib_dispatch patchset 2025-08-16 13:27:01 +10:00
Alistair Leslie-Hughes
a877872a9a Updated vkd3d-latest patchset 2025-08-15 08:07:30 +10:00
Alistair Leslie-Hughes
e2390e2637 Updated vkd3d-latest patchset 2025-08-07 07:20:57 +10:00
Alistair Leslie-Hughes
999c6a11d6 Updated vkd3d-latest patchset 2025-08-01 07:19:16 +10:00
Alistair Leslie-Hughes
dde6218e4e Updated vkd3d-latest patchset 2025-07-30 08:46:43 +10:00
Alistair Leslie-Hughes
6336965159 Updated vkd3d-latest patchset 2025-07-24 07:31:47 +10:00
Alistair Leslie-Hughes
18084e82a7 Updated oleaut32-default-pic-size definition 2025-07-22 07:38:47 +10:00
Elizabeth Figura
89d2f58ebd Rebase against 7c7b3e43047a26789f1cbd5b3a04a37a3d08e2bd. 2025-07-21 16:35:21 -05:00
Elizabeth Figura
1db546cd7e Rebase against e44737278a4487cb8a75f81cedbe7393c5f716cc. 2025-07-18 18:05:19 -05:00
Elizabeth Figura
5e73b4fe8b Rebase against 182e2887b7c01d464f296bd7aa1335f147d8e514. 2025-07-18 17:50:06 -05:00
Alistair Leslie-Hughes
54295e8aaa Rebase against e1af2ae201c9853133ef3af1dafe15fe992fed92. 2025-07-16 12:47:09 +10:00
Alistair Leslie-Hughes
b09545bc48 Release v10.12 2025-07-12 20:06:05 +10:00
Alistair Leslie-Hughes
8c98aa0c22 Added msxml_normalize_line patchset 2025-07-12 15:22:15 +10:00
Alistair Leslie-Hughes
31cab243e7 Added comctl32_animate_avi patchset 2025-07-11 19:33:15 +10:00
Alistair Leslie-Hughes
caa47e6c73 Rebase against d1f6b3771376cc8909be712b127125e1b9e4f5d1. 2025-07-11 08:16:46 +10:00
Alistair Leslie-Hughes
d102a32693 Rebase against 177848adf54f6871e558be6b42ee2478a522c3d2. 2025-07-09 09:35:33 +10:00
Alistair Leslie-Hughes
784382204b Updated msxml3-element_props patchset
Add missing patch.
2025-07-08 15:54:55 +10:00
Alistair Leslie-Hughes
3e94d12465 Release v10.11 2025-06-28 14:10:47 +10:00
Alistair Leslie-Hughes
f102154244 Updated vkd3d-latest patchset 2025-06-27 08:23:40 +10:00
Alistair Leslie-Hughes
26c1f46d89 Rebase against 80bc1338bea7d9dac78ab449b4505e5bb91e7ba3. 2025-06-27 08:16:31 +10:00
Elizabeth Figura
8dd91084bf Rebase against 1c586991c802a7368137ae2c0470880bb359de78. 2025-06-25 19:31:10 -05:00
Alistair Leslie-Hughes
e232cccc6a Updated vkd3d-latest patchset 2025-06-25 10:56:46 +10:00
Alistair Leslie-Hughes
2ed03c4ed0 Rebase against 69e3a51b3dc50dd1697c64f7b2bcde54baa0a300. 2025-06-25 10:56:05 +10:00
Elizabeth Figura
5054f7359b Rebase against 7f0fac46d718e0961314d0c50342dcf336b9803d. 2025-06-23 16:47:48 -05:00
Alistair Leslie-Hughes
7db26cf727 Rebase against e9dcdf38041a1911d37117e0219dced5ba5dbf7f. 2025-06-22 18:07:01 +10:00
Elizabeth Figura
1d80a4ba4e Rebase against 057e1d73e84b06fac90cba96dbf0305d219df3d5. 2025-06-19 16:36:06 -05:00
Alistair Leslie-Hughes
5cc4d90333 Rebase against 73b75afe55144727775e8a865f82ed843c19b3bb. 2025-06-19 11:06:28 +10:00
Alistair Leslie-Hughes
a044166651 Updated vkd3d-latest patchset
Squash and rebase.
2025-06-18 10:25:22 +10:00
Alistair Leslie-Hughes
c37f9f5091 Release v10.10 2025-06-14 16:15:47 +10:00
Alistair Leslie-Hughes
b3f1bf0856 Rebase against 885446556ce443b496e368b8f2c68807dcc7df0f. 2025-06-14 15:22:25 +10:00
Alistair Leslie-Hughes
4de57fff29 Updated vkd3d-latest patchset 2025-06-13 08:26:56 +10:00
Alistair Leslie-Hughes
52ba925f90 Rebase against 19441ac8046556a0118d6b59838dfd408fa56fdd. 2025-06-13 07:55:01 +10:00
Alistair Leslie-Hughes
cc517dd949 Updated vkd3d-latest patchset 2025-06-11 07:54:27 +10:00
Alistair Leslie-Hughes
a9be5cf2b0 Updated vkd3d-latest patchset 2025-06-06 07:11:56 +10:00
Elizabeth Figura
df97d6c328 Rebase against 5063ab8a805e77b9b9dfe5587fb38981923e422d. 2025-06-02 16:03:11 -05:00
Alistair Leslie-Hughes
b4006fc038 Release v10.9 2025-06-02 08:14:05 +10:00
Alistair Leslie-Hughes
d1cc8d0fa5 Added kernel32-limit_heap_old_exe patchset 2025-06-02 07:48:53 +10:00
Alistair Leslie-Hughes
ef72380f02 Rebase against e0bb1dba3d6fdff61a6f98a4ca7d6af4438e21d4. 2025-05-29 10:06:53 +10:00
Alistair Leslie-Hughes
1b2e959b75 Updated vkd3d-latest patchset 2025-05-28 07:36:25 +10:00
Alistair Leslie-Hughes
31a37e3f3c Rebase against 371929471ddcac9358d6de238296ba115170a3fa. 2025-05-28 07:36:03 +10:00
Alistair Leslie-Hughes
a3738434e0 Rebase against 22af42ac22279e6c0c671f033661f95c1761b4bb. 2025-05-24 07:53:59 +10:00
Alistair Leslie-Hughes
554a64f6b3 Rebase against 8f91df4c4e4fb8b32c737bb02e82dcddfb71a114. 2025-05-22 07:44:21 +10:00
Alistair Leslie-Hughes
7f2c4b8613 Rebase against a550040d94de646c65f4013337b5cce89383b634. 2025-05-21 07:45:33 +10:00
Alistair Leslie-Hughes
47f77594ab Release v10.8 2025-05-17 11:30:37 +10:00
Alistair Leslie-Hughes
4adf613941 Rebase against 0ac1033f04074339de5cae9ffd9f4f45baaef92e. 2025-05-16 08:09:23 +10:00
Alistair Leslie-Hughes
b3fc3b367a Updated vkd3d-latest patchset 2025-05-15 08:02:49 +10:00
Alistair Leslie-Hughes
0b9581fa6a Rebase against 09539a3af5f806bf319917cafff2b07e6480d656. 2025-05-15 08:02:24 +10:00
Alistair Leslie-Hughes
06a7d6349e Updated vkd3d-latest patchset 2025-05-13 09:05:49 +10:00
Alistair Leslie-Hughes
86a7c93cdd Rebase against f9741837a3bff3a912442695b4f7c3f5efbef557. 2025-05-09 13:30:18 +10:00
Alistair Leslie-Hughes
abf4b4db07 Updated odbc32-fixes patchset
Some older ANSI drivers have a limit on the number of environment handles that
can be created.  So reuse existing environment variable for each connection
when possible.
2025-05-08 12:15:16 +10:00
Alistair Leslie-Hughes
b4d8b2f64f Rebase against d8a271c053bb23171355854d7af155b3bda7e8a9. 2025-05-08 12:14:47 +10:00
Alistair Leslie-Hughes
092b56c39c Updated vkd3d-latest patchset 2025-05-07 07:49:36 +10:00
Alistair Leslie-Hughes
2cd8221624 Rebase against 226a7eeabbc13345e49da1ff8c018d6f06211c66. 2025-05-06 07:55:00 +10:00
Alistair Leslie-Hughes
e855d43a60 Updated vkd3d-latest patchset
Squash and Update.
2025-05-06 06:58:56 +10:00
Alistair Leslie-Hughes
f95009bb3e Updated odbc32-fixes patchset
Corrected Commit ascii to ANSI.
Reset patch numbers.
Convert SQL_C_WCHAR to SQL_CHAR when required for ANSI driver.
2025-05-05 11:54:43 +10:00
Alistair Leslie-Hughes
edfe4935ff Release v10.7 2025-05-03 15:42:07 +10:00
Alistair Leslie-Hughes
b8110be095 Updated odbc32-fixes patchset
Convert of type needs to occur not matter if fallback is being used.
2025-05-02 11:14:22 +10:00
Alistair Leslie-Hughes
42a307df67 Updated odbc32-fixes patchset
More support for the PostgreSQL ODBC ascii driver.
2025-05-01 08:42:13 +10:00
Alistair Leslie-Hughes
c89fe8069e Updated vkd3d-latest patchset 2025-05-01 06:49:44 +10:00
Alistair Leslie-Hughes
eff3de6ad2 Updated odbc32-fixes patchset 2025-04-30 14:13:01 +10:00
Alistair Leslie-Hughes
9f89b77e8f Updated vkd3d-latest patchset 2025-04-29 08:02:01 +10:00
Elizabeth Figura
74dd8bdd2a Rebase against e646263a6f048156d5cb9c63b094cd9c80d5bfb6. 2025-04-28 16:59:26 -05:00
Alistair Leslie-Hughes
f01e66252c Updated odbc32-fixes patchset
Completed patchset to get PostgreSQL ASCII driver working.
2025-04-28 11:21:27 +10:00
Alistair Leslie-Hughes
353a868136 Updated odbc32-fixes patchset
Attempt to get PostgreSQL ascii ODBC driver working.
2025-04-26 19:19:26 +10:00
Alistair Leslie-Hughes
ee5092247c Updated vkd3d-latest patchset 2025-04-26 09:07:11 +10:00
Alistair Leslie-Hughes
e54c70a009 Rebase against f7503d0a996ae1243dd6c87b39a9143624a80465. 2025-04-26 09:03:13 +10:00
Elizabeth Figura
1b8ab6cb68 Rebase against ba6adef9bfc209f1247ba88acec64b58d97100c3. 2025-04-21 17:29:53 -05:00
Alistair Leslie-Hughes
81425de332 Release v10.6 2025-04-21 15:53:41 +10:00
Alistair Leslie-Hughes
c2d96a3c91 Rebase against 040e1333b1f4cf73d6877daec15495a8be42324a. 2025-04-21 07:24:55 +10:00
Alistair Leslie-Hughes
292830fa82 Updated vkd3d-latest patchset 2025-04-17 08:55:47 +10:00
Elizabeth Figura
6912feaf65 Rebase against 661cc2a1dec5e44e074702707272228178f21487. 2025-04-15 23:07:07 -05:00
Alistair Leslie-Hughes
aa0c8391eb Updated odbc32-fixes patchset
Thanks Steve Fawcett.
2025-04-10 08:25:33 +10:00
Alistair Leslie-Hughes
36020b4a0e Updated vkd3d-latest patchset
Squash and update.
2025-04-10 08:23:17 +10:00
Elizabeth Figura
4fa7fcd631 Rebase against 647004cd5d7ee93ad8b53abb8939da87be3e25a0. 2025-04-09 17:11:35 -05:00
Elizabeth Figura
ebf36e4717 d3dx9_36-DDS: Remove patch.
This was implemented upstream by e12a1d283a0d4a14c2394a05052b06f0de16f1a6.
2025-04-09 16:47:07 -05:00
Alistair Leslie-Hughes
835c92a298 Release v10.5 2025-04-06 12:29:00 +10:00
Alistair Leslie-Hughes
708eb528c0 Rebase against f3843ea16b85012d0d0ca0f4f95a4c87c97d03f9. 2025-04-05 11:53:02 +11:00
Alistair Leslie-Hughes
77a24c72b8 Updated vkd3d-latest patchset 2025-04-05 11:52:49 +11:00
Elizabeth Figura
8924ee42d8 Rebase against e956c4ec71dd0f41090df3863e6f937963b2b7d9. 2025-04-02 18:32:00 -05:00
Elizabeth Figura
e1b2c45272 Rebase against 8e2aea6290e823d2f5023e2bff5c2fec0880a65d. 2025-04-02 13:37:06 -05:00
Elizabeth Figura
9b43d37fd1 winex11-_NET_ACTIVE_WINDOW: Restore.
This was not actually implemented upstream. Upstream does not send events; it only so far tracks changes made by other applications.
2025-04-02 12:59:45 -05:00
Paul Gofman
5b64f435e9 ntdll-ForceBottomUpAlloc: Rebase and re-enable. 2025-04-01 14:56:02 -06:00
Paul Gofman
441fd5f422 Rebase against 908f9eb20ff7511fe7f717d1a72d0e2e8911887d. 2025-04-01 12:28:07 -06:00
Alistair Leslie-Hughes
c103bbb0b6 Rebase against cf6bdfd2260b4e2a29e72a241ad60f6f39712fa3. 2025-03-30 08:38:01 +11:00
Elizabeth Figura
d88d44f1d9 ntdll-Syscall_Emulation: Also trap syscalls in the top-down reserved area.
Patch from "mkrsym1@gmail.com".
2025-03-25 22:17:15 -05:00
Elizabeth Figura
5e84688c5f Rebase against 3379ee2e6b5f610b9f82d31be9417095372ebc5e. 2025-03-25 21:57:58 -05:00
Alistair Leslie-Hughes
c110178b0d Release v10.4 2025-03-22 17:50:09 +11:00
Alistair Leslie-Hughes
796c6b3a44 Added msxml3-element_props patchset 2025-03-22 15:34:38 +11:00
Alistair Leslie-Hughes
2ae11f25b0 Updated vkd3d-latest patchset 2025-03-22 15:33:02 +11:00
Elizabeth Figura
30f69aa45a Staging: Avoid leaking staging_event for every thread.
Just leak it for the first one.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=57989
2025-03-20 22:20:58 -05:00
Elizabeth Figura
bb826f2185 Rebase against ced1402d20ba874f9634a306630455366c3865b5. 2025-03-19 17:31:39 -05:00
Elizabeth Figura
c5767aad30 Rebase against e66405a5040ac233ebdc7bdd925919ad63b4dd69. 2025-03-19 09:33:51 -05:00
Alistair Leslie-Hughes
fa0cd8ead0 Rebase against 6298b0cab2086ae61f46b284d22c420dfbb2b44e. 2025-03-18 10:16:45 +11:00
Alistair Leslie-Hughes
f247cd5d6b Rebase against b201cd518f3448553c31e329d5504b94f21d84ce. 2025-03-13 16:44:46 +11:00
Alistair Leslie-Hughes
b17a3d6c54 Updated vkd3d-latest patchset
Squash to latest.
2025-03-13 07:08:10 +11:00
Elizabeth Figura
c0e113dd3a Rebase against 10bb431e0d0760d72921106c7607d66808b939bb. 2025-03-12 10:41:26 -05:00
282 changed files with 27569 additions and 26679 deletions

View File

@@ -1,15 +1,15 @@
From 601da0ae0c6b22f37d20e6e0f10558093277eca9 Mon Sep 17 00:00:00 2001
From efd5485d5026fceb01c7a25bb47a780505adea68 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Thu, 2 Oct 2014 19:44:31 +0200
Subject: [PATCH] ntdll: Print a warning message specifying the wine-staging
branch name and version.
---
dlls/ntdll/loader.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
dlls/ntdll/loader.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c
index 5f84ca7e23b..fabf394fbe5 100644
index c20d6a5d87b..717f321bc6e 100644
--- a/dlls/ntdll/loader.c
+++ b/dlls/ntdll/loader.c
@@ -43,6 +43,7 @@ WINE_DECLARE_DEBUG_CHANNEL(relay);
@@ -20,7 +20,7 @@ index 5f84ca7e23b..fabf394fbe5 100644
#ifdef _WIN64
#define DEFAULT_SECURITY_COOKIE_64 (((ULONGLONG)0x00002b99 << 32) | 0x2ddfa232)
@@ -3828,6 +3829,7 @@ void WINAPI LdrShutdownProcess(void)
@@ -3879,6 +3880,7 @@ void WINAPI LdrShutdownProcess(void)
process_detach();
}
@@ -28,7 +28,7 @@ index 5f84ca7e23b..fabf394fbe5 100644
/******************************************************************
* RtlExitUserProcess (NTDLL.@)
@@ -4322,6 +4324,9 @@ static void release_address_space(void)
@@ -4388,6 +4390,9 @@ static void release_address_space(void)
*/
void loader_init( CONTEXT *context, void **entry )
{
@@ -38,13 +38,13 @@ index 5f84ca7e23b..fabf394fbe5 100644
static int attach_done;
NTSTATUS status;
ULONG_PTR cookie, port = 0;
@@ -4407,7 +4412,18 @@ void loader_init( CONTEXT *context, void **entry )
arm64ec_thread_init();
#endif
@@ -4485,6 +4490,20 @@ void loader_init( CONTEXT *context, void **entry )
}
wm = get_modref( NtCurrentTeb()->Peb->ImageBaseAddress );
+ /* This hunk occasionally applies in the wrong place;
+ * add a comment here to try to prevent that. */
}
+ }
+ RtlInitUnicodeString( &staging_event_string, L"\\__wine_staging_warn_event" );
+ InitializeObjectAttributes( &staging_event_attr, &staging_event_string, OBJ_OPENIF, NULL, NULL );
+ if (NtCreateEvent( &staging_event, EVENT_ALL_ACCESS, &staging_event_attr, NotificationEvent, FALSE ) == STATUS_SUCCESS)
@@ -53,10 +53,12 @@ index 5f84ca7e23b..fabf394fbe5 100644
+ FIXME_(winediag)("Please mention your exact version when filing bug reports on winehq.org.\n");
+ }
+ else
+ {
+ WARN_(winediag)("wine-staging %s is a testing version containing experimental patches.\n", wine_get_version());
+ NtClose( staging_event );
}
NtCurrentTeb()->FlsSlots = fls_alloc_data();
--
2.45.2
2.51.0

View File

@@ -1,4 +1,4 @@
From 8aa6fb73e3142d86ba354c204313b8a74a5fa43d Mon Sep 17 00:00:00 2001
From fb422ad56e3549e81d3b60afc77b0a0c6a56f672 Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Thu, 2 Oct 2014 19:53:46 +0200
Subject: [PATCH] winelib: Append '(Staging)' at the end of the version string.
@@ -8,10 +8,10 @@ Subject: [PATCH] winelib: Append '(Staging)' at the end of the version string.
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index f86a5decb07..3d7f9cc96e6 100644
index b4ede761391..ea6bd2fae3c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3910,7 +3910,7 @@ dnl Rules for generated source files
@@ -3728,7 +3728,7 @@ dnl Rules for generated source files
WINE_APPEND_RULE(
[dlls/ntdll/unix/version.c: dummy
@@ -19,7 +19,7 @@ index f86a5decb07..3d7f9cc96e6 100644
+ @version=\`(GIT_DIR=${wine_srcdir}.git git describe HEAD 2>/dev/null || echo \"wine-\$(PACKAGE_VERSION)\") | sed -n -e '\$\$s/\(.*\)/const char wine_build[[]] = \"\\1 (Staging)\";/p'\` && (echo \$\$version | cmp -s - \$[@]) || echo \$\$version >\$[@] || (rm -f \$[@] && exit 1)
programs/winetest/build.rc: dummy
@build=\"STRINGTABLE { 1 \\\"\`GIT_DIR=${wine_srcdir}.git git rev-parse HEAD 2>/dev/null\`\\\" }\" && (echo \$\$build | cmp -s - \$[@]) || echo \$\$build >\$[@] || (rm -f \$[@] && exit 1)
programs/winetest/build.nfo:
dlls/wineandroid.drv/wine-debug.apk: dlls/wineandroid.drv/build.gradle ${wine_srcdir}dlls/wineandroid.drv/AndroidManifest.xml ${wine_srcdir}dlls/wineandroid.drv/WineActivity.java ${wine_srcdir}dlls/wineandroid.drv/wine.svg
--
2.33.0
2.47.2

View File

@@ -1,57 +0,0 @@
From f9f5002e4ce6417dd196d53b50c51a3b224015d3 Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Tue, 12 Nov 2019 18:13:20 +0800
Subject: [PATCH] comctl32: Bump version to 6.0.
An application that I have here checks comctl32.dll version information
and refuses to run, changing DLL version to 6.0 makes it run.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
---
dlls/comctl32/comctl32.h | 2 +-
dlls/comctl32/comctl32.rc | 2 +-
include/commctrl.h | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/dlls/comctl32/comctl32.h b/dlls/comctl32/comctl32.h
index 51f4337add2..3fe8905abea 100644
--- a/dlls/comctl32/comctl32.h
+++ b/dlls/comctl32/comctl32.h
@@ -194,7 +194,7 @@ BOOL Str_SetPtrAtoW(LPWSTR *lppDest, LPCSTR lpSrc);
BOOL Str_SetPtrWtoA(LPSTR *lppDest, LPCWSTR lpSrc);
BOOL imagelist_has_alpha(HIMAGELIST, UINT);
-#define COMCTL32_VERSION_MINOR 81
+#define COMCTL32_VERSION_MINOR 0
/* Our internal stack structure of the window procedures to subclass */
typedef struct _SUBCLASSPROCS {
diff --git a/dlls/comctl32/comctl32.rc b/dlls/comctl32/comctl32.rc
index c9aa1ba6253..be6e2425193 100644
--- a/dlls/comctl32/comctl32.rc
+++ b/dlls/comctl32/comctl32.rc
@@ -114,7 +114,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
#define WINE_FILEDESCRIPTION_STR "Wine Common Controls"
#define WINE_FILENAME_STR "comctl32.dll"
#define WINE_FILEVERSION COMCTL32_VERSION, COMCTL32_VERSION_MINOR, 4704, 1100
-#define WINE_FILEVERSION_STR "5.81"
+#define WINE_FILEVERSION_STR "6.00.4704.1100"
#define WINE_PRODUCTVERSION WINE_FILEVERSION
#define WINE_PRODUCTVERSION_STR WINE_FILEVERSION_STR
diff --git a/include/commctrl.h b/include/commctrl.h
index a54de13d8b2..e0b0e22d4dc 100644
--- a/include/commctrl.h
+++ b/include/commctrl.h
@@ -59,7 +59,7 @@ enum _LI_METRIC
WINCOMMCTRLAPI HRESULT WINAPI LoadIconWithScaleDown(HINSTANCE, const WCHAR *, int, int, HICON *);
WINCOMMCTRLAPI HRESULT WINAPI LoadIconMetric(HINSTANCE, const WCHAR *, int, HICON *);
-#define COMCTL32_VERSION 5 /* dll version */
+#define COMCTL32_VERSION 6 /* dll version */
#define ICC_LISTVIEW_CLASSES 0x00000001 /* listview, header */
#define ICC_TREEVIEW_CLASSES 0x00000002 /* treeview, tooltips */
--
2.40.1

View File

@@ -0,0 +1,24 @@
From 8a9c55d23750ca2650eba518e46549d8b5d94b43 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Fri, 11 Jul 2025 14:11:36 +1000
Subject: [PATCH] comctl32: Animate support AVI msvc codex
---
dlls/comctl32/animate.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/dlls/comctl32/animate.c b/dlls/comctl32/animate.c
index 46e1e37b72d..717422c784f 100644
--- a/dlls/comctl32/animate.c
+++ b/dlls/comctl32/animate.c
@@ -644,6 +644,7 @@ static BOOL ANIMATE_GetAviCodec(ANIMATE_INFO *infoPtr)
/* check uncompressed AVI */
if ((infoPtr->ash.fccHandler == mmioFOURCC('D', 'I', 'B', ' ')) ||
(infoPtr->ash.fccHandler == mmioFOURCC('R', 'L', 'E', ' ')) ||
+ (infoPtr->ash.fccHandler == mmioFOURCC('m', 's', 'v', 'c')) ||
(infoPtr->ash.fccHandler == mmioFOURCC(0, 0, 0, 0)))
{
infoPtr->hic = 0;
--
2.47.2

View File

@@ -0,0 +1,24 @@
From b8cce6663a956f8fb8f07700672e378b44b1af1c Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Fri, 11 Jul 2025 15:21:07 +1000
Subject: [PATCH] comctl32: Animate to support RLE8 codex
---
dlls/comctl32/animate.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/dlls/comctl32/animate.c b/dlls/comctl32/animate.c
index 717422c784f..ca4fae85a11 100644
--- a/dlls/comctl32/animate.c
+++ b/dlls/comctl32/animate.c
@@ -645,6 +645,7 @@ static BOOL ANIMATE_GetAviCodec(ANIMATE_INFO *infoPtr)
if ((infoPtr->ash.fccHandler == mmioFOURCC('D', 'I', 'B', ' ')) ||
(infoPtr->ash.fccHandler == mmioFOURCC('R', 'L', 'E', ' ')) ||
(infoPtr->ash.fccHandler == mmioFOURCC('m', 's', 'v', 'c')) ||
+ (infoPtr->ash.fccHandler == mmioFOURCC('m', 'r', 'l', 'e')) ||
(infoPtr->ash.fccHandler == mmioFOURCC(0, 0, 0, 0)))
{
infoPtr->hic = 0;
--
2.47.2

View File

@@ -0,0 +1,119 @@
From 2ef9715ae9fffa0a6d7cdf0dc04e8de7eb245ce4 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Fri, 11 Jul 2025 18:07:39 +1000
Subject: [PATCH] comctl32: Animate control doesn't support compressed AVI
The Animate control only supporst uncompress AVI with the excpetion of RLE8.
---
dlls/comctl32/animate.c | 64 ++---------------------------------------
1 file changed, 3 insertions(+), 61 deletions(-)
diff --git a/dlls/comctl32/animate.c b/dlls/comctl32/animate.c
index ca4fae85a11..74516db81f5 100644
--- a/dlls/comctl32/animate.c
+++ b/dlls/comctl32/animate.c
@@ -39,14 +39,6 @@
WINE_DEFAULT_DEBUG_CHANNEL(animate);
-static struct {
- HMODULE hModule;
- HIC (WINAPI *fnICOpen)(DWORD, DWORD, UINT);
- LRESULT (WINAPI *fnICClose)(HIC);
- LRESULT (WINAPI *fnICSendMessage)(HIC, UINT, DWORD_PTR, DWORD_PTR);
- DWORD (WINAPIV *fnICDecompress)(HIC,DWORD,LPBITMAPINFOHEADER,LPVOID,LPBITMAPINFOHEADER,LPVOID);
-} fnIC;
-
typedef struct
{
/* reference to input stream (file or resource) */
@@ -189,11 +181,6 @@ static void ANIMATE_Free(ANIMATE_INFO *infoPtr)
}
Free (infoPtr->lpIndex);
infoPtr->lpIndex = NULL;
- if (infoPtr->hic)
- {
- fnIC.fnICClose(infoPtr->hic);
- infoPtr->hic = 0;
- }
Free (infoPtr->inbih);
infoPtr->inbih = NULL;
Free (infoPtr->outbih);
@@ -342,13 +329,6 @@ static BOOL ANIMATE_DrawFrame(ANIMATE_INFO *infoPtr, HDC hDC)
mmioSeek(infoPtr->hMMio, infoPtr->lpIndex[infoPtr->currFrame], SEEK_SET);
mmioRead(infoPtr->hMMio, infoPtr->indata, infoPtr->ash.dwSuggestedBufferSize);
- if (infoPtr->hic &&
- fnIC.fnICDecompress(infoPtr->hic, 0, infoPtr->inbih, infoPtr->indata,
- infoPtr->outbih, infoPtr->outdata) != ICERR_OK) {
- WARN("Decompression error\n");
- return FALSE;
- }
-
ANIMATE_PaintFrame(infoPtr, hDC);
if (infoPtr->currFrame++ >= infoPtr->nToFrame) {
@@ -649,39 +629,12 @@ static BOOL ANIMATE_GetAviCodec(ANIMATE_INFO *infoPtr)
(infoPtr->ash.fccHandler == mmioFOURCC(0, 0, 0, 0)))
{
infoPtr->hic = 0;
- return TRUE;
- }
-
- /* try to get a decompressor for that type */
- infoPtr->hic = fnIC.fnICOpen(ICTYPE_VIDEO, infoPtr->ash.fccHandler, ICMODE_DECOMPRESS);
- if (!infoPtr->hic) {
- WARN("Can't load codec for the file\n");
- return FALSE;
- }
-
- outSize = fnIC.fnICSendMessage(infoPtr->hic, ICM_DECOMPRESS_GET_FORMAT,
- (DWORD_PTR)infoPtr->inbih, 0L);
-
- if (!(infoPtr->outbih = Alloc(outSize)))
- return FALSE;
-
- if (fnIC.fnICSendMessage(infoPtr->hic, ICM_DECOMPRESS_GET_FORMAT,
- (DWORD_PTR)infoPtr->inbih, (DWORD_PTR)infoPtr->outbih) != ICERR_OK)
- {
- WARN("Can't get output BIH\n");
- return FALSE;
+ return TRUE;
}
- if (!(infoPtr->outdata = Alloc(infoPtr->outbih->biSizeImage)))
- return FALSE;
+ FIXME("Unsupported %s\n", debugstr_fourcc(infoPtr->ash.fccHandler));
- if (fnIC.fnICSendMessage(infoPtr->hic, ICM_DECOMPRESS_BEGIN,
- (DWORD_PTR)infoPtr->inbih, (DWORD_PTR)infoPtr->outbih) != ICERR_OK) {
- WARN("Can't begin decompression\n");
- return FALSE;
- }
-
- return TRUE;
+ return FALSE;
}
@@ -790,17 +743,6 @@ static BOOL ANIMATE_Create(HWND hWnd, const CREATESTRUCTW *lpcs)
{
ANIMATE_INFO *infoPtr;
- if (!fnIC.hModule)
- {
- fnIC.hModule = LoadLibraryW(L"msvfw32.dll");
- if (!fnIC.hModule) return FALSE;
-
- fnIC.fnICOpen = (void*)GetProcAddress(fnIC.hModule, "ICOpen");
- fnIC.fnICClose = (void*)GetProcAddress(fnIC.hModule, "ICClose");
- fnIC.fnICSendMessage = (void*)GetProcAddress(fnIC.hModule, "ICSendMessage");
- fnIC.fnICDecompress = (void*)GetProcAddress(fnIC.hModule, "ICDecompress");
- }
-
/* allocate memory for info structure */
infoPtr = Alloc(sizeof(*infoPtr));
if (!infoPtr) return FALSE;
--
2.47.2

View File

@@ -0,0 +1,2 @@
Fixes: [52278] comctl32: Animate support AVI msvc codex.

View File

@@ -1,231 +0,0 @@
From e6c1c1fe3fe2f4fe7d3e421b94d925c40063af22 Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Fri, 5 Jul 2019 13:20:23 +0800
Subject: [PATCH] cryptext: Implement CryptExtOpenCER.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
---
configure | 1 +
configure.ac | 1 +
dlls/cryptext/Makefile.in | 3 +-
dlls/cryptext/cryptext.spec | 4 +--
dlls/cryptext/cryptext_main.c | 64 +++++++++++++++++++++++++++++++++
dlls/cryptext/tests/Makefile.in | 4 +++
dlls/cryptext/tests/cryptext.c | 61 +++++++++++++++++++++++++++++++
7 files changed, 135 insertions(+), 3 deletions(-)
create mode 100644 dlls/cryptext/tests/Makefile.in
create mode 100644 dlls/cryptext/tests/cryptext.c
diff --git a/configure b/configure
index ca6e87d4740..7033499399f 100755
--- a/configure
+++ b/configure
@@ -21660,6 +21660,7 @@ wine_fn_config_makefile dlls/crypt32/tests enable_tests
wine_fn_config_makefile dlls/cryptdlg enable_cryptdlg
wine_fn_config_makefile dlls/cryptdll enable_cryptdll
wine_fn_config_makefile dlls/cryptext enable_cryptext
+wine_fn_config_makefile dlls/cryptext/tests enable_tests
wine_fn_config_makefile dlls/cryptnet enable_cryptnet
wine_fn_config_makefile dlls/cryptnet/tests enable_tests
wine_fn_config_makefile dlls/cryptowinrt enable_cryptowinrt
diff --git a/configure.ac b/configure.ac
index cba55126869..57064a05fe5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2477,6 +2477,7 @@ WINE_CONFIG_MAKEFILE(dlls/crypt32/tests)
WINE_CONFIG_MAKEFILE(dlls/cryptdlg)
WINE_CONFIG_MAKEFILE(dlls/cryptdll)
WINE_CONFIG_MAKEFILE(dlls/cryptext)
+WINE_CONFIG_MAKEFILE(dlls/cryptext/tests)
WINE_CONFIG_MAKEFILE(dlls/cryptnet)
WINE_CONFIG_MAKEFILE(dlls/cryptnet/tests)
WINE_CONFIG_MAKEFILE(dlls/cryptowinrt)
diff --git a/dlls/cryptext/Makefile.in b/dlls/cryptext/Makefile.in
index 5598bfb78e0..acda4e4ac6d 100644
--- a/dlls/cryptext/Makefile.in
+++ b/dlls/cryptext/Makefile.in
@@ -1,4 +1,5 @@
-MODULE = cryptext.dll
+MODULE = cryptext.dll
+IMPORTS = crypt32 cryptui user32
EXTRADLLFLAGS = -Wb,--prefer-native
diff --git a/dlls/cryptext/cryptext.spec b/dlls/cryptext/cryptext.spec
index ee3e155f457..24b4794c198 100644
--- a/dlls/cryptext/cryptext.spec
+++ b/dlls/cryptext/cryptext.spec
@@ -12,8 +12,8 @@
@ stub CryptExtAddSPCW
@ stub CryptExtOpenCAT
@ stub CryptExtOpenCATW
-@ stub CryptExtOpenCER
-@ stub CryptExtOpenCERW
+@ stdcall CryptExtOpenCER(long ptr str long)
+@ stdcall CryptExtOpenCERW(long ptr wstr long)
@ stub CryptExtOpenCRL
@ stub CryptExtOpenCRLW
@ stub CryptExtOpenCTL
diff --git a/dlls/cryptext/cryptext_main.c b/dlls/cryptext/cryptext_main.c
index 537ba66cd3b..a4314518eac 100644
--- a/dlls/cryptext/cryptext_main.c
+++ b/dlls/cryptext/cryptext_main.c
@@ -22,10 +22,29 @@
#include "windef.h"
#include "winbase.h"
+#include "winnls.h"
+#include "wincrypt.h"
+#include "winuser.h"
+#include "cryptuiapi.h"
+
+#include "wine/heap.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(cryptext);
+static WCHAR *heap_strdupAtoW(const char *str)
+{
+ WCHAR *ret;
+ INT len;
+
+ if (!str) return NULL;
+ len = MultiByteToWideChar(CP_ACP, 0, str, -1, NULL, 0);
+ ret = heap_alloc(len * sizeof(WCHAR));
+ if (ret)
+ MultiByteToWideChar(CP_ACP, 0, str, -1, ret, len);
+ return ret;
+}
+
/***********************************************************************
* CryptExtAddPFX (CRYPTEXT.@)
*/
@@ -43,3 +62,48 @@ HRESULT WINAPI CryptExtAddPFXW(LPCWSTR filename)
FIXME("stub: %s\n", debugstr_w(filename));
return E_NOTIMPL;
}
+
+/***********************************************************************
+ * CryptExtOpenCERW (CRYPTEXT.@)
+ */
+HRESULT WINAPI CryptExtOpenCERW(HWND hwnd, HINSTANCE hinst, LPCWSTR filename, DWORD showcmd)
+{
+ PCCERT_CONTEXT ctx;
+ CRYPTUI_VIEWCERTIFICATE_STRUCTW info;
+
+ TRACE("(%p, %p, %s, %lu)\n", hwnd, hinst, debugstr_w(filename), showcmd);
+
+ if (!CryptQueryObject(CERT_QUERY_OBJECT_FILE, filename, CERT_QUERY_CONTENT_FLAG_CERT,
+ CERT_QUERY_FORMAT_FLAG_ALL, 0, NULL, NULL, NULL, NULL, NULL,
+ (const void **)&ctx))
+ {
+ /* FIXME: move to the resources */
+ static const WCHAR msg[] = {'T','h','i','s',' ','i','s',' ','n','o','t',' ','a',' ','v','a','l','i','d',' ','c','e','r','t','i','f','i','c','a','t','e',0};
+ MessageBoxW(NULL, msg, filename, MB_OK | MB_ICONERROR);
+ return S_OK; /* according to the tests */
+ }
+
+ memset(&info, 0, sizeof(info));
+ info.dwSize = sizeof(info);
+ info.pCertContext = ctx;
+ CryptUIDlgViewCertificateW(&info, NULL);
+ CertFreeCertificateContext(ctx);
+
+ return S_OK;
+}
+
+/***********************************************************************
+ * CryptExtOpenCER (CRYPTEXT.@)
+ */
+HRESULT WINAPI CryptExtOpenCER(HWND hwnd, HINSTANCE hinst, LPCSTR filename, DWORD showcmd)
+{
+ HRESULT hr;
+ LPWSTR filenameW;
+
+ TRACE("(%p, %p, %s, %lu)\n", hwnd, hinst, debugstr_a(filename), showcmd);
+
+ filenameW = heap_strdupAtoW(filename);
+ hr = CryptExtOpenCERW(hwnd, hinst, filenameW, showcmd);
+ heap_free(filenameW);
+ return hr;
+}
diff --git a/dlls/cryptext/tests/Makefile.in b/dlls/cryptext/tests/Makefile.in
new file mode 100644
index 00000000000..c3f4551fc00
--- /dev/null
+++ b/dlls/cryptext/tests/Makefile.in
@@ -0,0 +1,4 @@
+TESTDLL = cryptext.dll
+
+SOURCES = \
+ cryptext.c
diff --git a/dlls/cryptext/tests/cryptext.c b/dlls/cryptext/tests/cryptext.c
new file mode 100644
index 00000000000..ab1007dbd82
--- /dev/null
+++ b/dlls/cryptext/tests/cryptext.c
@@ -0,0 +1,61 @@
+/*
+ * Copyright 2019 Dmitry Timoshkov
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#include <stdarg.h>
+#include <assert.h>
+#include <windef.h>
+#include <winbase.h>
+#include <winuser.h>
+#include <winerror.h>
+
+#include "wine/test.h"
+
+static HRESULT (WINAPI *pCryptExtOpenCER)(HWND,HINSTANCE,LPCSTR,DWORD);
+
+static void test_CryptExtOpenCER(void)
+{
+ HRESULT hr;
+
+ if (!pCryptExtOpenCER)
+ {
+ win_skip("CryptExtOpenCER is not available on this platform\n");
+ return;
+ }
+
+ if (!winetest_interactive)
+ {
+ skip("CryptExtOpenCER test needs user interaction\n");
+ return;
+ }
+
+ SetLastError(0xdeadbeef);
+ hr = pCryptExtOpenCER(0, 0, "dead.beef", SW_HIDE);
+ ok(hr == S_OK, "got %#lx\n", hr);
+
+ hr = pCryptExtOpenCER(0, 0, "VeriSign Class 3 Public Primary Certification Authority - G4.txt", SW_SHOW);
+ ok(hr == S_OK, "got %#lx\n", hr);
+}
+
+START_TEST(cryptext)
+{
+ HMODULE hmod = LoadLibraryA("cryptext.dll");
+
+ pCryptExtOpenCER = (void *)GetProcAddress(hmod, "CryptExtOpenCER");
+
+ test_CryptExtOpenCER();
+}
--
2.43.0

View File

@@ -1,2 +0,0 @@
# Taken from the mailing list - July 2019.
Fixes: cryptext: Implement CryptExtOpenCER.

View File

@@ -0,0 +1,109 @@
From 4abe3ab87631c7bb6144437ff2e1473030d033cb Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Fri, 13 May 2022 12:13:11 +1000
Subject: [PATCH] d3drm: IDirect3DRMMeshBuilder2 Clone stub
---
dlls/d3drm/meshbuilder.c | 85 +++++++++++++++++++++++++++++++++++++++-
1 file changed, 83 insertions(+), 2 deletions(-)
diff --git a/dlls/d3drm/meshbuilder.c b/dlls/d3drm/meshbuilder.c
index 27e76c1cf25..0c765d77281 100644
--- a/dlls/d3drm/meshbuilder.c
+++ b/dlls/d3drm/meshbuilder.c
@@ -402,9 +402,90 @@ static ULONG WINAPI d3drm_mesh_builder2_Release(IDirect3DRMMeshBuilder2 *iface)
static HRESULT WINAPI d3drm_mesh_builder2_Clone(IDirect3DRMMeshBuilder2 *iface,
IUnknown *outer, REFIID iid, void **out)
{
- FIXME("iface %p, outer %p, iid %s, out %p stub!\n", iface, outer, debugstr_guid(iid), out);
+ struct d3drm_mesh_builder *mesh_builder = impl_from_IDirect3DRMMeshBuilder2(iface);
+ struct d3drm_mesh_builder *mesh2;
+ HRESULT hr;
- return E_NOTIMPL;
+ FIXME("iface %p, outer %p, iid %s, out %p Semi-stub\n", iface, outer, debugstr_guid(iid), out);
+
+ if (outer)
+ FIXME("outer currently ignored\n");
+
+ *out = NULL;
+
+ hr = d3drm_mesh_builder_create(&mesh2, mesh_builder->d3drm);
+ if(SUCCEEDED(hr))
+ {
+ mesh2->nb_vertices = mesh_builder->nb_vertices;
+ mesh2->vertices_size = mesh_builder->vertices_size;
+ if (mesh_builder->vertices && mesh_builder->nb_vertices)
+ {
+ if (!d3drm_array_reserve((void **)&mesh2->vertices, &mesh_builder->vertices_size, mesh_builder->nb_vertices,
+ sizeof(*mesh_builder->vertices)))
+ {
+ IDirect3DRMMeshBuilder2_Release(&mesh2->IDirect3DRMMeshBuilder2_iface);
+ return E_OUTOFMEMORY;
+ }
+ memcpy(mesh2->vertices, mesh_builder->vertices, mesh_builder->nb_vertices * sizeof(*mesh_builder->vertices));
+ }
+
+ mesh2->nb_normals = mesh_builder->nb_normals;
+ mesh2->normals_size = mesh_builder->normals_size;
+ if (mesh_builder->normals && mesh_builder->nb_normals)
+ {
+ if (!d3drm_array_reserve((void **)&mesh2->normals, &mesh_builder->normals_size,
+ mesh_builder->nb_vertices, sizeof(*mesh_builder->normals)))
+ {
+ IDirect3DRMMeshBuilder2_Release(&mesh2->IDirect3DRMMeshBuilder2_iface);
+ return E_OUTOFMEMORY;
+ }
+ memcpy(mesh2->normals, mesh_builder->normals, mesh_builder->nb_normals * sizeof(*mesh_builder->normals));
+ }
+
+ mesh2->nb_faces = mesh_builder->nb_faces;
+ mesh2->face_data_size = mesh_builder->face_data_size;
+ if (mesh_builder->pFaceData && mesh_builder->face_data_size)
+ {
+ mesh2->pFaceData = malloc(mesh_builder->face_data_size * 2);
+ if(!mesh2->pFaceData)
+ {
+ IDirect3DRMMeshBuilder2_Release(&mesh2->IDirect3DRMMeshBuilder2_iface);
+ return E_OUTOFMEMORY;
+ }
+ memcpy(mesh2->pFaceData, mesh_builder->pFaceData, mesh_builder->face_data_size * 2);
+ }
+
+ mesh2->nb_coords2d = mesh_builder->nb_coords2d;
+ if (mesh_builder->pCoords2d && mesh_builder->nb_coords2d)
+ {
+ mesh2->pCoords2d = calloc(mesh_builder->nb_coords2d, sizeof(*mesh_builder->pCoords2d));
+ if (!mesh2->pCoords2d)
+ {
+ IDirect3DRMMeshBuilder2_Release(&mesh2->IDirect3DRMMeshBuilder2_iface);
+ return E_OUTOFMEMORY;
+ }
+ memcpy(mesh2->pCoords2d, mesh_builder->pCoords2d, mesh_builder->nb_coords2d * sizeof(*mesh_builder->pCoords2d));
+ }
+
+ mesh2->color = mesh_builder->color;
+ mesh2->material = mesh_builder->material;
+ if (mesh2->material)
+ IDirect3DRMTexture2_AddRef(mesh2->material);
+ mesh2->texture = mesh_builder->texture;
+ if (mesh2->texture)
+ IDirect3DRMTexture2_AddRef(mesh2->texture);
+ mesh2->nb_materials = mesh_builder->nb_materials;
+ if (mesh2->nb_materials > 0)
+ FIXME("materials NOT copied yet\n");
+ //struct mesh_material *materials;
+ //DWORD *material_indices;
+ mesh2->quality = mesh_builder->quality;
+
+ hr = IDirect3DRMMeshBuilder2_QueryInterface(&mesh2->IDirect3DRMMeshBuilder2_iface, iid, out);
+ IDirect3DRMMeshBuilder2_Release(&mesh2->IDirect3DRMMeshBuilder3_iface);
+ }
+
+ return hr;
}
static HRESULT WINAPI d3drm_mesh_builder2_AddDestroyCallback(IDirect3DRMMeshBuilder2 *iface,
--
2.45.2

View File

@@ -0,0 +1,27 @@
From 689dad471ce391ed9cfcbc91a4b6c2a00c21b7d8 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Fri, 13 May 2022 12:31:55 +1000
Subject: [PATCH] d3drm: IDirect3DRMMeshBuilder2 AddFaces stub
---
dlls/d3drm/meshbuilder.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/dlls/d3drm/meshbuilder.c b/dlls/d3drm/meshbuilder.c
index 0c765d77281..abad81c51ae 100644
--- a/dlls/d3drm/meshbuilder.c
+++ b/dlls/d3drm/meshbuilder.c
@@ -679,7 +679,9 @@ static HRESULT WINAPI d3drm_mesh_builder2_AddFaces(IDirect3DRMMeshBuilder2 *ifac
FIXME("iface %p, vertex_count %lu, vertices %p, normal_count %lu, normals %p, face_data %p, array %p stub!\n",
iface, vertex_count, vertices, normal_count, normals, face_data, array);
- return E_NOTIMPL;
+ if (array)
+ *array = NULL;
+ return S_OK;
}
static HRESULT WINAPI d3drm_mesh_builder2_ReserveSpace(IDirect3DRMMeshBuilder2 *iface,
--
2.45.2

View File

@@ -0,0 +1,61 @@
From d1beb46198beef65617571b6d4cebf7cf8618188 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Fri, 13 May 2022 12:56:26 +1000
Subject: [PATCH] d3drm: IDirect3DRMMesh GetBox stubs
---
dlls/d3drm/meshbuilder.c | 4 ++--
dlls/d3drm/tests/d3drm.c | 8 ++++++++
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/dlls/d3drm/meshbuilder.c b/dlls/d3drm/meshbuilder.c
index abad81c51ae..2f0fe1df7ba 100644
--- a/dlls/d3drm/meshbuilder.c
+++ b/dlls/d3drm/meshbuilder.c
@@ -626,7 +626,7 @@ static HRESULT WINAPI d3drm_mesh_builder2_GetBox(IDirect3DRMMeshBuilder2 *iface,
{
FIXME("iface %p, box %p stub!\n", iface, box);
- return E_NOTIMPL;
+ return S_OK;
}
static HRESULT WINAPI d3drm_mesh_builder2_GenerateNormals(IDirect3DRMMeshBuilder2 *iface)
@@ -2594,7 +2594,7 @@ static HRESULT WINAPI d3drm_mesh_GetBox(IDirect3DRMMesh *iface, D3DRMBOX *box)
{
FIXME("iface %p, box %p stub!\n", iface, box);
- return E_NOTIMPL;
+ return D3DRMERR_BOXNOTSET;
}
static HRESULT WINAPI d3drm_mesh_AddGroup(IDirect3DRMMesh *iface, unsigned vertex_count,
diff --git a/dlls/d3drm/tests/d3drm.c b/dlls/d3drm/tests/d3drm.c
index 5d478f24b1a..72e07dde7a8 100644
--- a/dlls/d3drm/tests/d3drm.c
+++ b/dlls/d3drm/tests/d3drm.c
@@ -449,6 +449,7 @@ static void test_MeshBuilder(void)
DWORD size;
D3DCOLOR color;
IUnknown *unk;
+ D3DRMBOX box;
hr = Direct3DRMCreate(&d3drm);
ok(hr == D3DRM_OK, "Cannot get IDirect3DRM interface, hr %#lx\n", hr);
@@ -694,6 +695,13 @@ static void test_MeshBuilder(void)
IDirect3DRMMesh_Release(mesh);
}
+ memset(&box, 0, sizeof(box));
+ hr = IDirect3DRMMeshBuilder_GetBox(pMeshBuilder, &box);
+ ok(hr == D3DRM_OK, "got hr %#lx.\n", hr);
+
+ expect_vector(&box.min, 1.0, 2.0f, 3.0f, 1);
+ expect_vector(&box.max, 6.9f, 8.0f, 8.9f, 1);
+
hr = IDirect3DRMMeshBuilder_Scale(pMeshBuilder, 2, 3 ,4);
ok(hr == D3DRM_OK, "Scale failed returning hr %#lx.\n", hr);
--
2.45.2

View File

@@ -0,0 +1,25 @@
From cfe0cdc509a8a69d151034aa0f709bdf556983c3 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Fri, 13 May 2022 13:01:03 +1000
Subject: [PATCH] d3drm: IDirect3DRMMeshBuilder2 Translate
---
dlls/d3drm/meshbuilder.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/d3drm/meshbuilder.c b/dlls/d3drm/meshbuilder.c
index 2f0fe1df7ba..8f9a3cb71a7 100644
--- a/dlls/d3drm/meshbuilder.c
+++ b/dlls/d3drm/meshbuilder.c
@@ -612,7 +612,7 @@ static HRESULT WINAPI d3drm_mesh_builder2_Translate(IDirect3DRMMeshBuilder2 *ifa
{
FIXME("iface %p, tx %.8e, ty %.8e, tz %.8e stub!\n", iface, tx, ty, tz);
- return E_NOTIMPL;
+ return S_OK;
}
static HRESULT WINAPI d3drm_mesh_builder2_SetColorSource(IDirect3DRMMeshBuilder2 *iface, D3DRMCOLORSOURCE source)
--
2.45.2

View File

@@ -0,0 +1,81 @@
From c210f81d3e30136dd970e9c99e6d42225743f35e Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Fri, 13 May 2022 14:19:14 +1000
Subject: [PATCH] d3drm: IDirect3DRMFrame2 SetPosition
---
dlls/d3drm/frame.c | 31 ++++++++++++++++++++-----------
1 file changed, 20 insertions(+), 11 deletions(-)
diff --git a/dlls/d3drm/frame.c b/dlls/d3drm/frame.c
index 7a5bd18cd33..80d47ce7896 100644
--- a/dlls/d3drm/frame.c
+++ b/dlls/d3drm/frame.c
@@ -1452,28 +1452,37 @@ static HRESULT WINAPI d3drm_frame1_GetParent(IDirect3DRMFrame *iface, IDirect3DR
return d3drm_frame2_GetParent(&frame->IDirect3DRMFrame2_iface, parent);
}
+static HRESULT frame_get_position(struct d3drm_frame *frame, struct d3drm_frame *reference, D3DVECTOR *position)
+{
+ // TODO
+ return S_OK;
+}
+
static HRESULT WINAPI d3drm_frame3_GetPosition(IDirect3DRMFrame3 *iface,
IDirect3DRMFrame3 *reference, D3DVECTOR *position)
{
- FIXME("iface %p, reference %p, position %p stub!\n", iface, reference, position);
-
- return E_NOTIMPL;
+ struct d3drm_frame *frame = impl_from_IDirect3DRMFrame3(iface);
+ struct d3drm_frame *ref = impl_from_IDirect3DRMFrame3(reference);
+ TRACE("iface %p, reference %p, position %p\n", iface, ref, position);
+ return frame_get_position(frame, NULL, position);
}
static HRESULT WINAPI d3drm_frame2_GetPosition(IDirect3DRMFrame2 *iface,
IDirect3DRMFrame *reference, D3DVECTOR *position)
{
- FIXME("iface %p, reference %p, position %p stub!\n", iface, reference, position);
-
- return E_NOTIMPL;
+ struct d3drm_frame *frame = impl_from_IDirect3DRMFrame2(iface);
+ struct d3drm_frame *ref = impl_from_IDirect3DRMFrame(reference);
+ TRACE("iface %p, reference %p, position %p\n", iface, ref, position);
+ return frame_get_position(frame, NULL, position);
}
static HRESULT WINAPI d3drm_frame1_GetPosition(IDirect3DRMFrame *iface,
IDirect3DRMFrame *reference, D3DVECTOR *position)
{
- FIXME("iface %p, reference %p, position %p stub!\n", iface, reference, position);
-
- return E_NOTIMPL;
+ struct d3drm_frame *frame = impl_from_IDirect3DRMFrame(iface);
+ struct d3drm_frame *ref = impl_from_IDirect3DRMFrame(reference);
+ TRACE("iface %p, reference %p, position %p\n", iface, reference, position);
+ return frame_get_position(frame, ref, position);
}
@@ -2449,7 +2458,7 @@ static HRESULT WINAPI d3drm_frame3_SetPosition(IDirect3DRMFrame3 *iface,
{
FIXME("iface %p, reference %p, x %.8e, y %.8e, z %.8e stub!\n", iface, reference, x, y, z);
- return E_NOTIMPL;
+ return S_OK;
}
static HRESULT WINAPI d3drm_frame2_SetPosition(IDirect3DRMFrame2 *iface,
@@ -2457,7 +2466,7 @@ static HRESULT WINAPI d3drm_frame2_SetPosition(IDirect3DRMFrame2 *iface,
{
FIXME("iface %p, reference %p, x %.8e, y %.8e, z %.8e stub!\n", iface, reference, x, y, z);
- return E_NOTIMPL;
+ return S_OK;
}
static HRESULT WINAPI d3drm_frame1_SetPosition(IDirect3DRMFrame *iface,
--
2.45.2

View File

@@ -0,0 +1,25 @@
From 15f7fb029e62d7027ab6f0d5546a40bef4630daa Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Fri, 13 May 2022 14:24:46 +1000
Subject: [PATCH] d3drm: IDirect3DRMFrame2 LookAt
---
dlls/d3drm/frame.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/d3drm/frame.c b/dlls/d3drm/frame.c
index 80d47ce7896..f908ea8dfdf 100644
--- a/dlls/d3drm/frame.c
+++ b/dlls/d3drm/frame.c
@@ -1800,7 +1800,7 @@ static HRESULT WINAPI d3drm_frame2_LookAt(IDirect3DRMFrame2 *iface, IDirect3DRMF
{
FIXME("iface %p, target %p, reference %p, constraint %#x stub!\n", iface, target, reference, constraint);
- return E_NOTIMPL;
+ return S_OK;
}
static HRESULT WINAPI d3drm_frame1_LookAt(IDirect3DRMFrame *iface, IDirect3DRMFrame *target,
--
2.45.2

View File

@@ -0,0 +1,25 @@
From 92465f0808020ded4857ff303476a4d65ad90d0a Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Fri, 13 May 2022 14:56:56 +1000
Subject: [PATCH] d3drm: IDirect3DRMFrame2 GetOrientation
---
dlls/d3drm/frame.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/d3drm/frame.c b/dlls/d3drm/frame.c
index f908ea8dfdf..2044ba8a2cb 100644
--- a/dlls/d3drm/frame.c
+++ b/dlls/d3drm/frame.c
@@ -1680,7 +1680,7 @@ static HRESULT WINAPI d3drm_frame2_GetOrientation(IDirect3DRMFrame2 *iface,
{
FIXME("iface %p, reference %p, dir %p, up %p stub!\n", iface, reference, dir, up);
- return E_NOTIMPL;
+ return S_OK;
}
static HRESULT WINAPI d3drm_frame1_GetOrientation(IDirect3DRMFrame *iface,
--
2.45.2

View File

@@ -0,0 +1,42 @@
From fd8a5b167eee739e678b7d306bc70ccab1e33e33 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Fri, 13 May 2022 15:21:26 +1000
Subject: [PATCH] d3drm: IDirect3DRMFrame2 Move
---
dlls/d3drm/frame.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/dlls/d3drm/frame.c b/dlls/d3drm/frame.c
index 2044ba8a2cb..375413af1d7 100644
--- a/dlls/d3drm/frame.c
+++ b/dlls/d3drm/frame.c
@@ -1815,14 +1815,14 @@ static HRESULT WINAPI d3drm_frame3_Move(IDirect3DRMFrame3 *iface, D3DVALUE delta
{
FIXME("iface %p, delta %.8e stub!\n", iface, delta);
- return E_NOTIMPL;
+ return S_OK;
}
static HRESULT WINAPI d3drm_frame2_Move(IDirect3DRMFrame2 *iface, D3DVALUE delta)
{
FIXME("iface %p, delta %.8e stub!\n", iface, delta);
- return E_NOTIMPL;
+ return S_OK;
}
static HRESULT WINAPI d3drm_frame1_Move(IDirect3DRMFrame *iface, D3DVALUE delta)
@@ -2483,7 +2483,7 @@ static HRESULT WINAPI d3drm_frame3_SetRotation(IDirect3DRMFrame3 *iface,
FIXME("iface %p, reference %p, x %.8e, y %.8e, z %.8e, theta %.8e stub!\n",
iface, reference, x, y, z, theta);
- return E_NOTIMPL;
+ return S_OK;
}
static HRESULT WINAPI d3drm_frame2_SetRotation(IDirect3DRMFrame2 *iface,
--
2.45.2

View File

@@ -0,0 +1,27 @@
From eed9eef5f7dda1c86dd59aa284f158ba33008480 Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Sat, 4 Jun 2022 14:48:54 +1000
Subject: [PATCH] d3drm: SetBufferCount Fake success
Wine-bug: https://bugs.winehq.org/show_bug.cgi?id=43180
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
---
dlls/d3drm/device.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/d3drm/device.c b/dlls/d3drm/device.c
index 1a433746224..fe85784ee63 100644
--- a/dlls/d3drm/device.c
+++ b/dlls/d3drm/device.c
@@ -783,7 +783,7 @@ static HRESULT WINAPI d3drm_device3_SetBufferCount(IDirect3DRMDevice3 *iface, DW
{
FIXME("iface %p, count %lu stub!\n", iface, count);
- return E_NOTIMPL;
+ return S_OK;
}
static HRESULT WINAPI d3drm_device2_SetBufferCount(IDirect3DRMDevice2 *iface, DWORD count)
--
2.45.2

View File

@@ -0,0 +1,117 @@
From 5da19416de998bfc236534d0e333c2c0454fdace Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Mon, 13 Jun 2022 17:21:45 +1000
Subject: [PATCH] d3drm: AddVertext creates a Coordinates list
---
dlls/d3drm/d3drm_private.h | 2 +-
dlls/d3drm/meshbuilder.c | 6 ++++-
dlls/d3drm/tests/d3drm.c | 48 ++++++++++++++++++++++++++++++++++++++
3 files changed, 54 insertions(+), 2 deletions(-)
diff --git a/dlls/d3drm/d3drm_private.h b/dlls/d3drm/d3drm_private.h
index e07efa1c799..53d2d76d18a 100644
--- a/dlls/d3drm/d3drm_private.h
+++ b/dlls/d3drm/d3drm_private.h
@@ -161,7 +161,7 @@ struct d3drm_mesh_builder
DWORD nb_faces;
DWORD face_data_size;
void *pFaceData;
- DWORD nb_coords2d;
+ SIZE_T nb_coords2d;
struct coords_2d *pCoords2d;
D3DCOLOR color;
IDirect3DRMMaterial2 *material;
diff --git a/dlls/d3drm/meshbuilder.c b/dlls/d3drm/meshbuilder.c
index 8f9a3cb71a7..70ab332359c 100644
--- a/dlls/d3drm/meshbuilder.c
+++ b/dlls/d3drm/meshbuilder.c
@@ -1232,7 +1232,7 @@ HRESULT load_mesh_data(IDirect3DRMMeshBuilder3 *iface, IDirectXFileData *pData,
mesh_builder->nb_coords2d = *(DWORD*)ptr;
- TRACE("MeshTextureCoords: nb_coords2d = %ld\n", mesh_builder->nb_coords2d);
+ TRACE("MeshTextureCoords: nb_coords2d = %Iu\n", mesh_builder->nb_coords2d);
mesh_builder->pCoords2d = calloc(mesh_builder->nb_coords2d, sizeof(*mesh_builder->pCoords2d));
memcpy(mesh_builder->pCoords2d, ptr + sizeof(DWORD), mesh_builder->nb_coords2d * sizeof(*mesh_builder->pCoords2d));
@@ -1949,6 +1949,10 @@ static int WINAPI d3drm_mesh_builder3_AddVertex(IDirect3DRMMeshBuilder3 *iface,
mesh_builder->vertices[mesh_builder->nb_vertices].y = y;
mesh_builder->vertices[mesh_builder->nb_vertices].z = z;
+ if (!d3drm_array_reserve((void **)&mesh_builder->pCoords2d, &mesh_builder->nb_coords2d,
+ mesh_builder->nb_coords2d + 1, sizeof(*mesh_builder->pCoords2d)))
+ return 0;
+
return mesh_builder->nb_vertices++;
}
diff --git a/dlls/d3drm/tests/d3drm.c b/dlls/d3drm/tests/d3drm.c
index 72e07dde7a8..778ab2546db 100644
--- a/dlls/d3drm/tests/d3drm.c
+++ b/dlls/d3drm/tests/d3drm.c
@@ -851,6 +851,53 @@ static void test_Mesh(void)
IDirect3DRM_Release(d3drm);
}
+static void test_Mesh_Vertices(void)
+{
+ HRESULT hr;
+ IDirect3DRM *d3drm;
+ IDirect3DRM2 *d3drm2;
+ IDirect3DRMMesh *mesh;
+ IDirect3DRMMeshBuilder2 *builder;
+ D3DVALUE u, v;
+ int idx;
+
+ hr = Direct3DRMCreate(&d3drm);
+ ok(hr == D3DRM_OK, "Cannot get IDirect3DRM interface, hr %#lx\n", hr);
+
+ if (FAILED(hr = IDirect3DRM_QueryInterface(d3drm, &IID_IDirect3DRM2, (void **)&d3drm2)))
+ {
+ win_skip("Cannot get IDirect3DRM2 interface, hr %#lx, skipping tests\n", hr);
+ IDirect3DRM_Release(d3drm);
+ return;
+ }
+
+ hr = IDirect3DRM_CreateMesh(d3drm, &mesh);
+ ok(hr == D3DRM_OK, "Cannot get IDirect3DRMMesh interface, hr %#lx\n", hr);
+
+ hr = IDirect3DRM2_CreateMeshBuilder(d3drm2, &builder);
+ ok(hr == S_OK, "got hr %#lx\n", hr);
+
+ idx = IDirect3DRMMeshBuilder_AddVertex(builder, -2.95f, 0.0f, 2.95f);
+ ok(idx == 0, "got hr %d\n", idx);
+
+ hr = IDirect3DRMMeshBuilder_SetTextureCoordinates(builder, 0, 0.0f, 0.0f);
+ ok(hr == S_OK, "got hr %#lx\n", hr);
+
+ idx = IDirect3DRMMeshBuilder_AddVertex(builder, -2.95f, 0.0f, 2.95f);
+ ok(idx == 1, "got hr %d\n", idx);
+
+ hr = IDirect3DRMMeshBuilder_GetTextureCoordinates(builder, idx, &u, &v);
+ ok(hr == S_OK, "got hr %#lx\n", hr);
+ ok(u == 0.0f, "got hr %.8e\n", u);
+ ok(v == 0.0f, "got hr %.8e\n", v);
+
+ IDirect3DRMMeshBuilder_Release(builder);
+ IDirect3DRMMesh_Release(mesh);
+
+ IDirect3DRM2_Release(d3drm2);
+ IDirect3DRM_Release(d3drm);
+}
+
static void test_Face(void)
{
HRESULT hr;
@@ -8243,6 +8290,7 @@ START_TEST(d3drm)
test_MeshBuilder();
test_MeshBuilder3();
test_Mesh();
+ test_Mesh_Vertices();
test_Face();
test_Frame();
test_Device();
--
2.45.2

View File

@@ -0,0 +1,39 @@
From ca13260b9498991535cb5544cd75716055ef3c8d Mon Sep 17 00:00:00 2001
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Date: Mon, 13 Jun 2022 17:53:37 +1000
Subject: [PATCH] d3drm: IDirect3DRMFace2 AddVertexAndNormalIndexed
---
dlls/d3drm/face.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/dlls/d3drm/face.c b/dlls/d3drm/face.c
index 34810894e13..ce75c68bb59 100644
--- a/dlls/d3drm/face.c
+++ b/dlls/d3drm/face.c
@@ -206,9 +206,11 @@ static HRESULT WINAPI d3drm_face1_AddVertex(IDirect3DRMFace *iface, D3DVALUE x,
static HRESULT WINAPI d3drm_face1_AddVertexAndNormalIndexed(IDirect3DRMFace *iface,
DWORD vertex, DWORD normal)
{
- FIXME("iface %p, vertex %lu, normal %lu stub!\n", iface, vertex, normal);
+ struct d3drm_face *face = impl_from_IDirect3DRMFace(iface);
- return E_NOTIMPL;
+ TRACE("iface %p, vertex %lu, normal %lu stub!\n", iface, vertex, normal);
+
+ return IDirect3DRMFace2_AddVertexAndNormalIndexed(&face->IDirect3DRMFace2_iface, vertex, normal);
}
static HRESULT WINAPI d3drm_face2_SetColorRGB(IDirect3DRMFace2 *iface, D3DVALUE red, D3DVALUE green, D3DVALUE blue)
@@ -477,7 +479,7 @@ static HRESULT WINAPI d3drm_face2_AddVertexAndNormalIndexed(IDirect3DRMFace2 *if
{
FIXME("iface %p, vertex %lu, normal %lu stub!\n", iface, vertex, normal);
- return E_NOTIMPL;
+ return S_OK;
}
static HRESULT WINAPI d3drm_face2_SetTexture(IDirect3DRMFace2 *iface, IDirect3DRMTexture3 *texture)
--
2.45.2

Some files were not shown because too many files have changed in this diff Show More