You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by rn...@apache.org on 2015/07/19 12:04:08 UTC
couch commit: updated refs/heads/master to 0529539
Repository: couchdb-couch
Updated Branches:
refs/heads/master c466a64d9 -> 0529539e6
Support Windows compilation for couch_ejson_compare
MSVC uses __declspec(thread) rather than __thread, so created a macro for it.
Project: http://git-wip-us.apache.org/repos/asf/couchdb-couch/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-couch/commit/0529539e
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-couch/tree/0529539e
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-couch/diff/0529539e
Branch: refs/heads/master
Commit: 0529539e65c0efa5c0dcabe925fe4e624e939eeb
Parents: c466a64
Author: NickNorth <No...@gmail.com>
Authored: Sun Jul 19 09:56:23 2015 +0100
Committer: NickNorth <No...@gmail.com>
Committed: Sun Jul 19 09:56:23 2015 +0100
----------------------------------------------------------------------
priv/couch_ejson_compare/couch_ejson_compare.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-couch/blob/0529539e/priv/couch_ejson_compare/couch_ejson_compare.c
----------------------------------------------------------------------
diff --git a/priv/couch_ejson_compare/couch_ejson_compare.c b/priv/couch_ejson_compare/couch_ejson_compare.c
index df001a1..6d1043f 100644
--- a/priv/couch_ejson_compare/couch_ejson_compare.c
+++ b/priv/couch_ejson_compare/couch_ejson_compare.c
@@ -31,6 +31,12 @@
!enif_is_tuple(env, t))
#endif
+#ifdef _MSC_VER
+#define threadlocal __declspec(thread)
+#else
+#define threadlocal __thread
+#endif
+
static ERL_NIF_TERM ATOM_TRUE;
static ERL_NIF_TERM ATOM_FALSE;
static ERL_NIF_TERM ATOM_NULL;
@@ -41,7 +47,7 @@ typedef struct {
UCollator* coll;
} ctx_t;
-static __thread UCollator* collator = NULL;
+static threadlocal UCollator* collator = NULL;
static UCollator** collators = NULL;
static int numCollators = 0;
static int numSchedulers = 0;