| @@ -23,14 +23,22 @@ | |||||
| extern "C" { | extern "C" { | ||||
| #endif | #endif | ||||
| extern void mc_set_debug(int debug); | |||||
| extern int mc_get_debug(void); | |||||
| #ifndef JSON_EXPORT | |||||
| #if defined(_MSC_VER) | |||||
| #define JSON_EXPORT __declspec(dllexport) | |||||
| #else | |||||
| #define JSON_EXPORT extern | |||||
| #endif | |||||
| #endif | |||||
| JSON_EXPORT void mc_set_debug(int debug); | |||||
| JSON_EXPORT int mc_get_debug(void); | |||||
| extern void mc_set_syslog(int syslog); | |||||
| JSON_EXPORT void mc_set_syslog(int syslog); | |||||
| extern void mc_debug(const char *msg, ...); | |||||
| extern void mc_error(const char *msg, ...); | |||||
| extern void mc_info(const char *msg, ...); | |||||
| JSON_EXPORT void mc_debug(const char *msg, ...); | |||||
| JSON_EXPORT void mc_error(const char *msg, ...); | |||||
| JSON_EXPORT void mc_info(const char *msg, ...); | |||||
| #ifndef __STRING | #ifndef __STRING | ||||
| #define __STRING(x) #x | #define __STRING(x) #x | ||||
| @@ -166,7 +166,7 @@ static int json_escape_str(struct printbuf *pb, const char *str, int len, int fl | |||||
| /* reference counting */ | /* reference counting */ | ||||
| extern struct json_object* json_object_get(struct json_object *jso) | |||||
| struct json_object* json_object_get(struct json_object *jso) | |||||
| { | { | ||||
| if (!jso) return jso; | if (!jso) return jso; | ||||
| @@ -351,7 +351,7 @@ JSON_EXPORT void json_object_set_serializer(json_object *jso, | |||||
| * @param jso unused | * @param jso unused | ||||
| * @param userdata the pointer that is passed to free(). | * @param userdata the pointer that is passed to free(). | ||||
| */ | */ | ||||
| json_object_delete_fn json_object_free_userdata; | |||||
| JSON_EXPORT json_object_delete_fn json_object_free_userdata; | |||||
| /** | /** | ||||
| * Copy the jso->_userdata string over to pb as-is. | * Copy the jso->_userdata string over to pb as-is. | ||||
| @@ -362,7 +362,7 @@ json_object_delete_fn json_object_free_userdata; | |||||
| * @param level Ignored. | * @param level Ignored. | ||||
| * @param flags Ignored. | * @param flags Ignored. | ||||
| */ | */ | ||||
| json_object_to_json_string_fn json_object_userdata_to_json_string; | |||||
| JSON_EXPORT json_object_to_json_string_fn json_object_userdata_to_json_string; | |||||
| #ifdef __clang__ | #ifdef __clang__ | ||||
| /* } */ | /* } */ | ||||
| @@ -825,7 +825,7 @@ JSON_EXPORT struct json_object* json_object_new_double_s(double d, const char *d | |||||
| * | * | ||||
| * @return -1 on errors, 0 on success. | * @return -1 on errors, 0 on success. | ||||
| */ | */ | ||||
| int json_c_set_serialization_double_format(const char *double_format, int global_or_thread); | |||||
| JSON_EXPORT int json_c_set_serialization_double_format(const char *double_format, int global_or_thread); | |||||
| @@ -1013,7 +1013,7 @@ typedef int (json_c_shallow_copy_fn)(json_object *src, json_object *parent, cons | |||||
| * | * | ||||
| * @return 1 on success, -1 on errors, but never 2. | * @return 1 on success, -1 on errors, but never 2. | ||||
| */ | */ | ||||
| json_c_shallow_copy_fn json_c_shallow_copy_default; | |||||
| JSON_EXPORT json_c_shallow_copy_fn json_c_shallow_copy_default; | |||||
| /** | /** | ||||
| * Copy the contents of the JSON object. | * Copy the contents of the JSON object. | ||||
| @@ -128,7 +128,9 @@ retry: | |||||
| #include <string.h> | #include <string.h> | ||||
| #include <fcntl.h> | #include <fcntl.h> | ||||
| #include <unistd.h> | |||||
| #if HAVE_UNISTD_H | |||||
| # include <unistd.h> | |||||
| #endif /* HAVE_UNISTD_H */ | |||||
| #include <stdlib.h> | #include <stdlib.h> | ||||
| #include <sys/stat.h> | #include <sys/stat.h> | ||||
| @@ -7,6 +7,6 @@ | |||||
| */ | */ | ||||
| /* Used by tests to get consistent output */ | /* Used by tests to get consistent output */ | ||||
| extern int _json_c_strerror_enable; | |||||
| JSON_EXPORT int _json_c_strerror_enable; | |||||
| #endif | #endif | ||||
| @@ -20,7 +20,7 @@ static const char *input_json_str = "{ " | |||||
| "'foo': ['bar', 'baz'], " | "'foo': ['bar', 'baz'], " | ||||
| "'': 0, " | "'': 0, " | ||||
| "'a/b': 1, " | "'a/b': 1, " | ||||
| "'c\%d': 2, " | |||||
| "'c%d': 2, " | |||||
| "'e^f': 3, " | "'e^f': 3, " | ||||
| "'g|h': 4, " | "'g|h': 4, " | ||||
| "'i\\\\j': 5, " | "'i\\\\j': 5, " | ||||
| @@ -238,7 +238,7 @@ static void test_example_set() | |||||
| assert(0 == json_pointer_set(&jo1, "/", json_object_new_int(9))); | assert(0 == json_pointer_set(&jo1, "/", json_object_new_int(9))); | ||||
| printf("PASSED - SET - / == 9\n"); | printf("PASSED - SET - / == 9\n"); | ||||
| jo2 = json_tokener_parse("{ 'foo': [ 'bar', 'cod' ], '': 9, 'a/b': 1, 'c\%d': 2, 'e^f': 3, 'g|h': 4, 'i\\\\j': 5, 'k\\\"l': 6, ' ': 7, 'm~n': 8, 'fud': { 'gaw': [ 0, 2, 3, 4 ] } }"); | |||||
| jo2 = json_tokener_parse("{ 'foo': [ 'bar', 'cod' ], '': 9, 'a/b': 1, 'c%d': 2, 'e^f': 3, 'g|h': 4, 'i\\\\j': 5, 'k\\\"l': 6, ' ': 7, 'm~n': 8, 'fud': { 'gaw': [ 0, 2, 3, 4 ] } }"); | |||||
| assert(json_object_equal(jo2, jo1)); | assert(json_object_equal(jo2, jo1)); | ||||
| printf("PASSED - SET - Final JSON is: %s\n", json_object_get_string(jo1)); | printf("PASSED - SET - Final JSON is: %s\n", json_object_get_string(jo1)); | ||||
| json_object_put(jo2); | json_object_put(jo2); | ||||
| @@ -11,6 +11,11 @@ | |||||
| static void test_basic_printbuf_memset(void); | static void test_basic_printbuf_memset(void); | ||||
| static void test_printbuf_memset_length(void); | static void test_printbuf_memset_length(void); | ||||
| #ifndef __func__ | |||||
| /* VC++ compat */ | |||||
| #define __func__ __FUNCTION__ | |||||
| #endif | |||||
| static void test_basic_printbuf_memset() | static void test_basic_printbuf_memset() | ||||
| { | { | ||||
| struct printbuf *pb; | struct printbuf *pb; | ||||
| @@ -158,7 +163,7 @@ int main(int argc, char **argv) | |||||
| { | { | ||||
| int before_resize = 0; | int before_resize = 0; | ||||
| mc_set_debug(1); | |||||
| MC_SET_DEBUG(1); | |||||
| test_basic_printbuf_memset(); | test_basic_printbuf_memset(); | ||||
| printf("========================================\n"); | printf("========================================\n"); | ||||
| @@ -6,7 +6,9 @@ | |||||
| #include <string.h> | #include <string.h> | ||||
| #include <fcntl.h> | #include <fcntl.h> | ||||
| #include <limits.h> | #include <limits.h> | ||||
| #include <unistd.h> | |||||
| #if HAVE_UNISTD_H | |||||
| # include <unistd.h> | |||||
| #endif /* HAVE_UNISTD_H */ | |||||
| #include <sys/types.h> | #include <sys/types.h> | ||||
| #include <sys/stat.h> | #include <sys/stat.h> | ||||