[KTMTYPES]
authorTimo Kreuzer <timo.kreuzer@reactos.org>
Thu, 11 Mar 2010 11:32:54 +0000 (11:32 +0000)
committerTimo Kreuzer <timo.kreuzer@reactos.org>
Thu, 11 Mar 2010 11:32:54 +0000 (11:32 +0000)
Fix the UOW hack, use special case for C++
Thanks to Dmitry Gorbachev for the solution.

svn path=/branches/header-work/; revision=46094

include/psdk/ktmtypes.h

index b687a56..77cf578 100644 (file)
 #define MAX_TRANSACTION_DESCRIPTION_LENGTH  64
 #define MAX_RESOURCEMANAGER_DESCRIPTION_LENGTH  64
 
-/* HACK: GCC does not like class members of the same name */
-#ifdef _MSC_VER
 typedef GUID UOW, *PUOW;
-#endif
-
 typedef GUID CRM_PROTOCOL_ID, *PCRM_PROTOCOL_ID;
 typedef ULONG NOTIFICATION_MASK;
 typedef ULONG SAVEPOINT_ID, *PSAVEPOINT_ID;
@@ -90,7 +86,11 @@ typedef struct _TRANSACTION_NOTIFICATION {
 
 typedef struct _TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT {
   GUID EnlistmentId;
-  GUID UOW;
+#if defined(__cplusplus)
+  ::UOW UOW;
+#else
+  UOW UOW;
+#endif
 } TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT, *PTRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT;
 
 typedef struct _TRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT {
@@ -123,7 +123,11 @@ typedef struct _KCRM_MARSHAL_HEADER {
 } KCRM_MARSHAL_HEADER, *PKCRM_MARSHAL_HEADER, *RESTRICTED_POINTER PRKCRM_MARSHAL_HEADER;
 
 typedef struct _KCRM_TRANSACTION_BLOB {
-  GUID UOW;
+#if defined(__cplusplus)
+  ::UOW UOW;
+#else
+  UOW UOW;
+#endif
   GUID TmIdentity;
   ULONG IsolationLevel;
   ULONG IsolationFlags;