Daniel Lehman : msvcrt: Add __ExceptionPtrAssign.
Alexandre Julliard
julliard at winehq.org
Wed Apr 19 14:49:37 CDT 2017
Module: wine
Branch: master
Commit: 867a27c96429cafaf8858c361625612b7817e951
URL: http://source.winehq.org/git/wine.git/?a=commit;h=867a27c96429cafaf8858c361625612b7817e951
Author: Daniel Lehman <dlehman at esri.com>
Date: Tue Apr 4 10:00:31 2017 -0700
msvcrt: Add __ExceptionPtrAssign.
Signed-off-by: Daniel Lehman <dlehman at esri.com>
Signed-off-by: Piotr Caban <piotr at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/msvcp140/msvcp140.spec | 4 ++--
dlls/msvcr100/msvcr100.spec | 4 ++--
dlls/msvcr110/msvcr110.spec | 4 ++--
dlls/msvcr120/msvcr120.spec | 4 ++--
dlls/msvcr120_app/msvcr120_app.spec | 4 ++--
dlls/msvcrt/cpp.c | 12 ++++++++++++
6 files changed, 22 insertions(+), 10 deletions(-)
diff --git a/dlls/msvcp140/msvcp140.spec b/dlls/msvcp140/msvcp140.spec
index 14e0fa1..fd8201b 100644
--- a/dlls/msvcp140/msvcp140.spec
+++ b/dlls/msvcp140/msvcp140.spec
@@ -1689,8 +1689,8 @@
@ stub ?_Xregex_error at std@@YAXW4error_type at regex_constants@1@@Z
@ cdecl -arch=win32 ?_Xruntime_error at std@@YAXPBD at Z(str) _Xruntime_error
@ cdecl -arch=win64 ?_Xruntime_error at std@@YAXPEBD at Z(str) _Xruntime_error
-@ stub -arch=win32 ?__ExceptionPtrAssign@@YAXPAXPBX at Z
-@ stub -arch=win64 ?__ExceptionPtrAssign@@YAXPEAXPEBX at Z
+@ cdecl -arch=win32 ?__ExceptionPtrAssign@@YAXPAXPBX at Z(ptr ptr) msvcr120.?__ExceptionPtrAssign@@YAXPAXPBX at Z
+@ cdecl -arch=win64 ?__ExceptionPtrAssign@@YAXPEAXPEBX at Z(ptr ptr) msvcr120.?__ExceptionPtrAssign@@YAXPEAXPEBX at Z
@ cdecl -arch=win32 ?__ExceptionPtrCompare@@YA_NPBX0 at Z(ptr ptr) msvcr120.?__ExceptionPtrCompare@@YA_NPBX0 at Z
@ cdecl -arch=win64 ?__ExceptionPtrCompare@@YA_NPEBX0 at Z(ptr ptr) msvcr120.?__ExceptionPtrCompare@@YA_NPEBX0 at Z
@ cdecl -arch=win32 ?__ExceptionPtrCopy@@YAXPAXPBX at Z(ptr ptr) msvcr120.?__ExceptionPtrCopy@@YAXPAXPBX at Z
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec
index 2c0f3c9..99bffe0 100644
--- a/dlls/msvcr100/msvcr100.spec
+++ b/dlls/msvcr100/msvcr100.spec
@@ -408,8 +408,8 @@
@ stub -arch=win32 ?_ValidateWrite@@YAHPAXI at Z
@ stub -arch=win64 ?_ValidateWrite@@YAHPEAXI at Z
@ cdecl ?_Value at _SpinCount@details at Concurrency@@SAIXZ() SpinCount__Value
-@ stub -arch=win32 ?__ExceptionPtrAssign@@YAXPAXPBX at Z
-@ stub -arch=win64 ?__ExceptionPtrAssign@@YAXPEAXPEBX at Z
+@ cdecl -arch=win32 ?__ExceptionPtrAssign@@YAXPAXPBX at Z(ptr ptr) __ExceptionPtrAssign
+@ cdecl -arch=win64 ?__ExceptionPtrAssign@@YAXPEAXPEBX at Z(ptr ptr) __ExceptionPtrAssign
@ cdecl -arch=win32 ?__ExceptionPtrCompare@@YA_NPBX0 at Z(ptr ptr) __ExceptionPtrCompare
@ cdecl -arch=win64 ?__ExceptionPtrCompare@@YA_NPEBX0 at Z(ptr ptr) __ExceptionPtrCompare
@ cdecl -arch=win32 ?__ExceptionPtrCopy@@YAXPAXPBX at Z(ptr ptr) __ExceptionPtrCopy
diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec
index dcaa089..cb7a043 100644
--- a/dlls/msvcr110/msvcr110.spec
+++ b/dlls/msvcr110/msvcr110.spec
@@ -686,8 +686,8 @@
@ stub -arch=win64 ?_ValidateWrite@@YAHPEAXI at Z
@ cdecl ?_Value at _SpinCount@details at Concurrency@@SAIXZ() SpinCount__Value
@ stub ?_Yield at _Context@details at Concurrency@@SAXXZ
-@ stub -arch=win32 ?__ExceptionPtrAssign@@YAXPAXPBX at Z
-@ stub -arch=win64 ?__ExceptionPtrAssign@@YAXPEAXPEBX at Z
+@ cdecl -arch=win32 ?__ExceptionPtrAssign@@YAXPAXPBX at Z(ptr ptr) __ExceptionPtrAssign
+@ cdecl -arch=win64 ?__ExceptionPtrAssign@@YAXPEAXPEBX at Z(ptr ptr) __ExceptionPtrAssign
@ cdecl -arch=win32 ?__ExceptionPtrCompare@@YA_NPBX0 at Z(ptr ptr) __ExceptionPtrCompare
@ cdecl -arch=win64 ?__ExceptionPtrCompare@@YA_NPEBX0 at Z(ptr ptr) __ExceptionPtrCompare
@ cdecl -arch=win32 ?__ExceptionPtrCopy@@YAXPAXPBX at Z(ptr ptr) __ExceptionPtrCopy
diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec
index 96afa6f..c2477e2 100644
--- a/dlls/msvcr120/msvcr120.spec
+++ b/dlls/msvcr120/msvcr120.spec
@@ -668,8 +668,8 @@
@ stub -arch=win64 ?_ValidateWrite@@YAHPEAXI at Z
@ cdecl ?_Value at _SpinCount@details at Concurrency@@SAIXZ() SpinCount__Value
@ stub ?_Yield at _Context@details at Concurrency@@SAXXZ
-@ stub -arch=win32 ?__ExceptionPtrAssign@@YAXPAXPBX at Z
-@ stub -arch=win64 ?__ExceptionPtrAssign@@YAXPEAXPEBX at Z
+@ cdecl -arch=win32 ?__ExceptionPtrAssign@@YAXPAXPBX at Z(ptr ptr) __ExceptionPtrAssign
+@ cdecl -arch=win64 ?__ExceptionPtrAssign@@YAXPEAXPEBX at Z(ptr ptr) __ExceptionPtrAssign
@ cdecl -arch=win32 ?__ExceptionPtrCompare@@YA_NPBX0 at Z(ptr ptr) __ExceptionPtrCompare
@ cdecl -arch=win64 ?__ExceptionPtrCompare@@YA_NPEBX0 at Z(ptr ptr) __ExceptionPtrCompare
@ cdecl -arch=win32 ?__ExceptionPtrCopy@@YAXPAXPBX at Z(ptr ptr) __ExceptionPtrCopy
diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec
index c12dcbc..443eac8 100644
--- a/dlls/msvcr120_app/msvcr120_app.spec
+++ b/dlls/msvcr120_app/msvcr120_app.spec
@@ -664,8 +664,8 @@
@ stub -arch=win64 ?_ValidateWrite@@YAHPEAXI at Z
@ cdecl ?_Value at _SpinCount@details at Concurrency@@SAIXZ() msvcr120.?_Value at _SpinCount@details at Concurrency@@SAIXZ
@ stub ?_Yield at _Context@details at Concurrency@@SAXXZ
-@ stub -arch=win32 ?__ExceptionPtrAssign@@YAXPAXPBX at Z
-@ stub -arch=win64 ?__ExceptionPtrAssign@@YAXPEAXPEBX at Z
+@ cdecl -arch=win32 ?__ExceptionPtrAssign@@YAXPAXPBX at Z(ptr ptr) msvcr120.?__ExceptionPtrAssign@@YAXPAXPBX at Z
+@ cdecl -arch=win64 ?__ExceptionPtrAssign@@YAXPEAXPEBX at Z(ptr ptr) msvcr120.?__ExceptionPtrAssign@@YAXPEAXPEBX at Z
@ cdecl -arch=win32 ?__ExceptionPtrCompare@@YA_NPBX0 at Z(ptr ptr) msvcr120.?__ExceptionPtrCompare@@YA_NPBX0 at Z
@ cdecl -arch=win64 ?__ExceptionPtrCompare@@YA_NPEBX0 at Z(ptr ptr) msvcr120.?__ExceptionPtrCompare@@YA_NPEBX0 at Z
@ cdecl -arch=win32 ?__ExceptionPtrCopy@@YAXPAXPBX at Z(ptr ptr) msvcr120.?__ExceptionPtrCopy@@YAXPAXPBX at Z
diff --git a/dlls/msvcrt/cpp.c b/dlls/msvcrt/cpp.c
index b7431cb..b3bfc2e 100644
--- a/dlls/msvcrt/cpp.c
+++ b/dlls/msvcrt/cpp.c
@@ -1765,6 +1765,18 @@ void __cdecl __ExceptionPtrCopy(exception_ptr *ep, const exception_ptr *copy)
}
/*********************************************************************
+ * ?__ExceptionPtrAssign@@YAXPAXPBX at Z
+ * ?__ExceptionPtrAssign@@YAXPEAXPEBX at Z
+ */
+void __cdecl __ExceptionPtrAssign(exception_ptr *ep, const exception_ptr *assign)
+{
+ TRACE("(%p %p)\n", ep, assign);
+
+ /* don't destroy object stored in ep */
+ *ep = *assign;
+}
+
+/*********************************************************************
* ?__ExceptionPtrRethrow@@YAXPBX at Z
* ?__ExceptionPtrRethrow@@YAXPEBX at Z
*/
More information about the wine-cvs
mailing list