summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/libimobiledevice-glue/thread.h17
1 files changed, 15 insertions, 2 deletions
diff --git a/include/libimobiledevice-glue/thread.h b/include/libimobiledevice-glue/thread.h
index a960410..b9c0bd0 100644
--- a/include/libimobiledevice-glue/thread.h
+++ b/include/libimobiledevice-glue/thread.h
@@ -27,8 +27,21 @@
#ifdef WIN32
typedef void* HANDLE;
typedef HANDLE THREAD_T;
-struct _RTL_CRITICAL_SECTION;
-typedef struct _RTL_CRITICAL_SECTION mutex_t;
+#pragma pack(push, 8)
+struct _CRITICAL_SECTION_ST {
+ void* DebugInfo;
+ long LockCount;
+ long RecursionCount;
+ HANDLE OwningThread;
+ HANDLE LockSemaphore;
+#if defined(_WIN64)
+ unsigned __int64 SpinCount;
+#else
+ unsigned long SpinCount;
+#endif
+};
+#pragma pack(pop)
+typedef struct _CRITICAL_SECTION_ST mutex_t;
typedef struct {
HANDLE sem;
} cond_t;