diff --git a/demo/Makefile.am b/demo/Makefile.am index 678df5d..ef5c189 100644 --- a/demo/Makefile.am +++ b/demo/Makefile.am @@ -10,15 +10,18 @@ noinst_PROGRAMS = searpc-demo-server searpc-demo-client searpc-async-client searpc_demo_server_SOURCES = test-object.c searpc-demo-server.c searpc-demo-packet.h -searpc_demo_server_LDADD = ${top_builddir}/lib/libsearpc.la @LIB_WS32@ +searpc_demo_server_LDADD = ${top_builddir}/lib/libsearpc.la @LIB_WS32@ \ + @GLIB_LIBS@ @JANSSON_LIBS@ searpc_demo_client_SOURCES = test-object.c searpc-demo-client.c searpc-demo-packet.h -searpc_demo_client_LDADD = ${top_builddir}/lib/libsearpc.la @LIB_WS32@ +searpc_demo_client_LDADD = ${top_builddir}/lib/libsearpc.la @LIB_WS32@ \ + @GLIB_LIBS@ @JANSSON_LIBS@ searpc_async_client_SOURCES = demo-async-client.c searpc-demo-packet.h -searpc_async_client_LDADD = ${top_builddir}/lib/libsearpc.la @LIB_WS32@ +searpc_async_client_LDADD = ${top_builddir}/lib/libsearpc.la @LIB_WS32@ \ + @GLIB_LIBS@ @JANSSON_LIBS@ EXTRA_DIST = rpc_table.py diff --git a/lib/searpc-client.c b/lib/searpc-client.c index abebec8..3caed41 100644 --- a/lib/searpc-client.c +++ b/lib/searpc-client.c @@ -71,7 +71,7 @@ fcall_to_str (const char *fname, int n_params, va_list args, gsize *len) const char *type = va_arg(args, const char *); void *value = va_arg(args, void *); if (strcmp(type, "int") == 0) - json_array_append_new (array, json_integer ((int)value)); + json_array_append_new (array, json_integer ((int)(long)value)); else if (strcmp(type, "int64") == 0) json_array_append_new (array, json_integer (*((gint64 *)value))); else if (strcmp(type, "string") == 0) @@ -541,7 +541,7 @@ searpc_client_fret__int (char *data, size_t len, GError **error) int ret; if (handle_ret_common(data, len, &object, error) == 0) { - ret = json_integer_value(json_object_get(object, "ret")); + ret = json_integer_value (json_object_get(object, "ret")); json_decref(object); return ret; } @@ -556,7 +556,7 @@ searpc_client_fret__int64 (char *data, size_t len, GError **error) gint64 ret; if (handle_ret_common(data, len, &object, error) == 0) { - ret = json_integer(json_object_get(object, "ret")); + ret = json_integer_value (json_object_get(object, "ret")); json_decref(object); return ret; } diff --git a/lib/searpc-server.c b/lib/searpc-server.c index 4cf9b70..851440e 100644 --- a/lib/searpc-server.c +++ b/lib/searpc-server.c @@ -134,7 +134,7 @@ searpc_set_objlist_to_ret_object (json_t *object, GList *ret) } char * -searpc_marshal_set_ret_common (json_t *object, int *len, GError *error) +searpc_marshal_set_ret_common (json_t *object, gsize *len, GError *error) { char *data; diff --git a/lib/searpc-server.h b/lib/searpc-server.h index 9832db8..645b6d3 100644 --- a/lib/searpc-server.h +++ b/lib/searpc-server.h @@ -17,7 +17,7 @@ void searpc_set_string_to_ret_object (json_t *object, char *ret); void searpc_set_int_to_ret_object (json_t *object, json_int_t ret); void searpc_set_object_to_ret_object (json_t *object, GObject *ret); void searpc_set_objlist_to_ret_object (json_t *object, GList *ret); -char *searpc_marshal_set_ret_common (json_t *object, int *len, GError *error); +char *searpc_marshal_set_ret_common (json_t *object, gsize *len, GError *error); /** * searpc_server_init: