[PATCH v6 1/8] msvcr100: Add _StructuredTaskCollection::_Schedule stub.

Torge Matthies tmatthies at codeweavers.com
Mon Apr 25 08:56:25 CDT 2022


Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47375
Signed-off-by: Torge Matthies <tmatthies at codeweavers.com>
---
 dlls/concrt140/concrt140.spec       |  6 +++---
 dlls/msvcr100/msvcr100.spec         |  4 ++--
 dlls/msvcr110/msvcr110.spec         |  6 +++---
 dlls/msvcr120/msvcr120.spec         |  6 +++---
 dlls/msvcr120_app/msvcr120_app.spec |  6 +++---
 dlls/msvcrt/concurrency.c           | 27 +++++++++++++++++++++++++++
 6 files changed, 41 insertions(+), 14 deletions(-)

diff --git a/dlls/concrt140/concrt140.spec b/dlls/concrt140/concrt140.spec
index 50db9348327b..6bb95661dd11 100644
--- a/dlls/concrt140/concrt140.spec
+++ b/dlls/concrt140/concrt140.spec
@@ -594,9 +594,9 @@
 @ stub -arch=arm ?_RunAndWait at _TaskCollection@details at Concurrency@@QAA?AW4_TaskCollectionStatus at 23@PAV_UnrealizedChore at 23@@Z
 @ stub -arch=i386 ?_RunAndWait at _TaskCollection@details at Concurrency@@QAG?AW4_TaskCollectionStatus at 23@PAV_UnrealizedChore at 23@@Z
 @ stub -arch=win64 ?_RunAndWait at _TaskCollection@details at Concurrency@@QEAA?AW4_TaskCollectionStatus at 23@PEAV_UnrealizedChore at 23@@Z
-@ stub -arch=arm ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAAXPAV_UnrealizedChore at 23@@Z
-@ stub -arch=i386 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@@Z
-@ stub -arch=win64 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@@Z
+@ thiscall -arch=arm ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAAXPAV_UnrealizedChore at 23@@Z(ptr ptr) StructuredTaskCollection__Schedule
+@ thiscall -arch=i386 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@@Z(ptr ptr) StructuredTaskCollection__Schedule
+@ thiscall -arch=win64 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@@Z(ptr ptr) StructuredTaskCollection__Schedule
 @ stub -arch=arm ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAAXPAV_UnrealizedChore at 23@PAVlocation at 3@@Z
 @ stub -arch=i386 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@PAVlocation at 3@@Z
 @ stub -arch=win64 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@PEAVlocation at 3@@Z
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec
index 19b4cbe96d75..2a03df03e33f 100644
--- a/dlls/msvcr100/msvcr100.spec
+++ b/dlls/msvcr100/msvcr100.spec
@@ -363,8 +363,8 @@
 @ stub -arch=win64 ?_RunAndWait at _StructuredTaskCollection@details at Concurrency@@QEAA?AW4_TaskCollectionStatus at 23@PEAV_UnrealizedChore at 23@@Z
 @ stub -arch=win32 ?_RunAndWait at _TaskCollection@details at Concurrency@@QAG?AW4_TaskCollectionStatus at 23@PAV_UnrealizedChore at 23@@Z
 @ stub -arch=win64 ?_RunAndWait at _TaskCollection@details at Concurrency@@QEAA?AW4_TaskCollectionStatus at 23@PEAV_UnrealizedChore at 23@@Z
-@ stub -arch=win32 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@@Z
-@ stub -arch=win64 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@@Z
+@ thiscall -arch=win32 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@@Z(ptr ptr) StructuredTaskCollection__Schedule
+@ thiscall -arch=win64 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@@Z(ptr ptr) StructuredTaskCollection__Schedule
 @ stub -arch=win32 ?_Schedule at _TaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@@Z
 @ stub -arch=win64 ?_Schedule at _TaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@@Z
 @ thiscall -arch=win32 ?_SetSpinCount@?$_SpinWait@$00 at details@Concurrency@@QAEXI at Z(ptr long) SpinWait__SetSpinCount
diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec
index 23840f85edac..2888bd97e000 100644
--- a/dlls/msvcr110/msvcr110.spec
+++ b/dlls/msvcr110/msvcr110.spec
@@ -614,9 +614,9 @@
 @ stub -arch=arm ?_RunAndWait at _TaskCollection@details at Concurrency@@QAA?AW4_TaskCollectionStatus at 23@PAV_UnrealizedChore at 23@@Z
 @ stub -arch=i386 ?_RunAndWait at _TaskCollection@details at Concurrency@@QAG?AW4_TaskCollectionStatus at 23@PAV_UnrealizedChore at 23@@Z
 @ stub -arch=win64 ?_RunAndWait at _TaskCollection@details at Concurrency@@QEAA?AW4_TaskCollectionStatus at 23@PEAV_UnrealizedChore at 23@@Z
-@ stub -arch=arm ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAAXPAV_UnrealizedChore at 23@@Z
-@ stub -arch=i386 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@@Z
-@ stub -arch=win64 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@@Z
+@ thiscall -arch=arm ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAAXPAV_UnrealizedChore at 23@@Z(ptr ptr) StructuredTaskCollection__Schedule
+@ thiscall -arch=i386 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@@Z(ptr ptr) StructuredTaskCollection__Schedule
+@ thiscall -arch=win64 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@@Z(ptr ptr) StructuredTaskCollection__Schedule
 @ stub -arch=arm ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAAXPAV_UnrealizedChore at 23@PAVlocation at 3@@Z
 @ stub -arch=i386 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@PAVlocation at 3@@Z
 @ stub -arch=win64 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@PEAVlocation at 3@@Z
diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec
index 64ddeed42f41..8ddc09bcaf8c 100644
--- a/dlls/msvcr120/msvcr120.spec
+++ b/dlls/msvcr120/msvcr120.spec
@@ -596,9 +596,9 @@
 @ stub -arch=arm ?_RunAndWait at _TaskCollection@details at Concurrency@@QAA?AW4_TaskCollectionStatus at 23@PAV_UnrealizedChore at 23@@Z
 @ stub -arch=i386 ?_RunAndWait at _TaskCollection@details at Concurrency@@QAG?AW4_TaskCollectionStatus at 23@PAV_UnrealizedChore at 23@@Z
 @ stub -arch=win64 ?_RunAndWait at _TaskCollection@details at Concurrency@@QEAA?AW4_TaskCollectionStatus at 23@PEAV_UnrealizedChore at 23@@Z
-@ stub -arch=arm ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAAXPAV_UnrealizedChore at 23@@Z
-@ stub -arch=i386 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@@Z
-@ stub -arch=win64 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@@Z
+@ thiscall -arch=arm ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAAXPAV_UnrealizedChore at 23@@Z(ptr ptr) StructuredTaskCollection__Schedule
+@ thiscall -arch=i386 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@@Z(ptr ptr) StructuredTaskCollection__Schedule
+@ thiscall -arch=win64 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@@Z(ptr ptr) StructuredTaskCollection__Schedule
 @ stub -arch=arm ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAAXPAV_UnrealizedChore at 23@PAVlocation at 3@@Z
 @ stub -arch=i386 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@PAVlocation at 3@@Z
 @ stub -arch=win64 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@PEAVlocation at 3@@Z
diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec
index 05f408d68847..4eb7cb6a2989 100644
--- a/dlls/msvcr120_app/msvcr120_app.spec
+++ b/dlls/msvcr120_app/msvcr120_app.spec
@@ -592,9 +592,9 @@
 @ stub -arch=arm ?_RunAndWait at _TaskCollection@details at Concurrency@@QAA?AW4_TaskCollectionStatus at 23@PAV_UnrealizedChore at 23@@Z
 @ stub -arch=i386 ?_RunAndWait at _TaskCollection@details at Concurrency@@QAG?AW4_TaskCollectionStatus at 23@PAV_UnrealizedChore at 23@@Z
 @ stub -arch=win64 ?_RunAndWait at _TaskCollection@details at Concurrency@@QEAA?AW4_TaskCollectionStatus at 23@PEAV_UnrealizedChore at 23@@Z
-@ stub -arch=arm ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAAXPAV_UnrealizedChore at 23@@Z
-@ stub -arch=i386 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@@Z
-@ stub -arch=win64 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@@Z
+@ thiscall -arch=arm ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAAXPAV_UnrealizedChore at 23@@Z(ptr ptr) msvcr120.?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAAXPAV_UnrealizedChore at 23@@Z
+@ thiscall -arch=i386 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@@Z(ptr ptr) msvcr120.?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@@Z
+@ thiscall -arch=win64 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@@Z(ptr ptr) msvcr120.?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@@Z
 @ stub -arch=arm ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAAXPAV_UnrealizedChore at 23@PAVlocation at 3@@Z
 @ stub -arch=i386 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@PAVlocation at 3@@Z
 @ stub -arch=win64 ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@PEAVlocation at 3@@Z
diff --git a/dlls/msvcrt/concurrency.c b/dlls/msvcrt/concurrency.c
index 2ca6421b0e74..db6e34ad457d 100644
--- a/dlls/msvcrt/concurrency.c
+++ b/dlls/msvcrt/concurrency.c
@@ -174,6 +174,20 @@ typedef struct cs_queue
 #endif
 } cs_queue;
 
+#if _MSVCR_VER >= 100
+
+typedef struct
+{
+    char dummy;
+} UnrealizedChore;
+
+typedef struct
+{
+    char dummy;
+} StructuredTaskCollection;
+
+#endif /* _MSVCR_VER >= 100 */
+
 typedef struct
 {
     ULONG_PTR unk_thread_id;
@@ -1741,6 +1755,19 @@ bool __thiscall SpinWait__SpinOnce(SpinWait *this)
     }
 }
 
+#if _MSVCR_VER >= 100
+
+/* ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAAXPAV_UnrealizedChore at 23@@Z */
+/* ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QAEXPAV_UnrealizedChore at 23@@Z */
+/* ?_Schedule at _StructuredTaskCollection@details at Concurrency@@QEAAXPEAV_UnrealizedChore at 23@@Z */
+DEFINE_THISCALL_WRAPPER(StructuredTaskCollection__Schedule, 8)
+void __thiscall StructuredTaskCollection__Schedule(StructuredTaskCollection *this, UnrealizedChore *chore)
+{
+    FIXME("(%p %p): stub!\n", this, chore);
+}
+
+#endif /* _MSVCR_VER >= 100 */
+
 /* ??0critical_section at Concurrency@@QAE at XZ */
 /* ??0critical_section at Concurrency@@QEAA at XZ */
 DEFINE_THISCALL_WRAPPER(critical_section_ctor, 4)
-- 
2.36.0




More information about the wine-devel mailing list