summaryrefslogtreecommitdiffstats
path: root/runtime/msg.c
diff options
context:
space:
mode:
authorPavel Levshin <pavel@levshin.spb.ru>2013-10-26 14:57:37 +0400
committerRainer Gerhards <rgerhards@adiscon.com>2013-10-26 15:40:50 +0200
commit200b43431695d3d4cccadafb2a37373fc55af0bb (patch)
tree41323f68704d85d14f042e04cce62f2009d17a88 /runtime/msg.c
parenta000bd661e0459524bd146a803e17df813350d92 (diff)
downloadrsyslog-200b43431695d3d4cccadafb2a37373fc55af0bb.tar.gz
rsyslog-200b43431695d3d4cccadafb2a37373fc55af0bb.tar.bz2
rsyslog-200b43431695d3d4cccadafb2a37373fc55af0bb.zip
Make use of int64 json numbers, if available
Diffstat (limited to 'runtime/msg.c')
-rw-r--r--runtime/msg.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/runtime/msg.c b/runtime/msg.c
index e30ff671..9f5bcde2 100644
--- a/runtime/msg.c
+++ b/runtime/msg.c
@@ -4140,7 +4140,11 @@ jsonDeepCopy(struct json_object *src)
dst = json_object_new_double(json_object_get_double(src));
break;
case json_type_int:
+#ifdef HAVE_JSON_OBJECT_NEW_INT64
+ dst = json_object_new_int64(json_object_get_int64(src));
+#else /* HAVE_JSON_OBJECT_NEW_INT64 */
dst = json_object_new_int(json_object_get_int(src));
+#endif /* HAVE_JSON_OBJECT_NEW_INT64 */
break;
case json_type_string:
dst = json_object_new_string(json_object_get_string(src));
@@ -4183,7 +4187,11 @@ msgSetJSONFromVar(msg_t *pMsg, uchar *varname, struct var *v)
free(cstr);
break;
case 'N':/* number (integer) */
+#ifdef HAVE_JSON_OBJECT_NEW_INT64
+ json = json_object_new_int64(v->d.n);
+#else /* HAVE_JSON_OBJECT_NEW_INT64 */
json = json_object_new_int((int) v->d.n);
+#endif /* HAVE_JSON_OBJECT_NEW_INT64 */
break;
case 'J':/* native JSON */
json = jsonDeepCopy(v->d.json);