blob: 602f1695b2d3bcab6de7a1860263a680bf378817 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
This file is part of MXE.
See index.html for further information.
Contains ad hoc patches for cross building.
From d7bc1aff67132c09d154999c282e1b391bbe7a39 Mon Sep 17 00:00:00 2001
From: MXE
Date: Fri, 23 Sep 2011 16:24:46 +0200
Subject: [PATCH 1/1] add missing MemoryBarrier (MXE specific)
Windows API has this, but it's not in MinGW.
See http://lists-archives.org/mingw-users/15935-missing-definition-of-memorybarrier.html
diff --git a/dbus/dbus-sysdeps-win.c b/dbus/dbus-sysdeps-win.c
index b492b09..082225f 100644
--- a/dbus/dbus-sysdeps-win.c
+++ b/dbus/dbus-sysdeps-win.c
@@ -55,6 +55,13 @@
#include <ws2tcpip.h>
#include <wincrypt.h>
+__CRT_INLINE VOID MemoryBarrier(VOID)
+{
+ LONG Barrier = 0;
+ __asm__ __volatile__("xchgl %%eax,%0 "
+ :"=r" (Barrier));
+}
+
/* Declarations missing in mingw's headers */
extern BOOL WINAPI ConvertStringSidToSidA (LPCSTR StringSid, PSID *Sid);
extern BOOL WINAPI ConvertSidToStringSidA (PSID Sid, LPSTR *StringSid);
--
1.7.6.3
|