json-c: Include math_compat.c for NAN/INF values

The backport patch also fixes the warning which was being work arounded
by disabling unused-but-set-variable

(From OE-Core rev: ebce241d0badff0a12b4c03a428720e0b4a59f32)

(From OE-Core rev: 3f757eb71d69a763a33540b1a590db1926c25408)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Khem Raj
2015-08-21 23:26:38 -07:00
committed by Richard Purdie
parent 00536009bd
commit 646a29c3da
2 changed files with 40 additions and 3 deletions

View File

@@ -0,0 +1,37 @@
From 9be71700eb580c815688584a64621a38867c3fdd Mon Sep 17 00:00:00 2001
From: James Myatt <james.myatt@tessella.com>
Date: Thu, 5 Feb 2015 15:57:14 +0000
Subject: [PATCH] json_tokener requires INF and NAN
---
Upstream-Status: Backport
json_tokener.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Index: json-c-0.12/json_tokener.c
===================================================================
--- json-c-0.12.orig/json_tokener.c
+++ json-c-0.12/json_tokener.c
@@ -16,6 +16,7 @@
#include "config.h"
#include <math.h>
+#include "math_compat.h"
#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>
@@ -352,12 +353,10 @@ struct json_object* json_tokener_parse_e
case json_tokener_state_inf: /* aka starts with 'i' */
{
- int size;
- int size_inf;
+ size_t size_inf;
int is_negative = 0;
printbuf_memappend_fast(tok->pb, &c, 1);
- size = json_min(tok->st_pos+1, json_null_str_len);
size_inf = json_min(tok->st_pos+1, json_inf_str_len);
char *infbuf = tok->pb->buf;
if (*infbuf == '-')

View File

@@ -4,7 +4,9 @@ HOMEPAGE = "https://github.com/json-c/json-c/wiki"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=de54b60fbbc35123ba193fea8ee216f2"
SRC_URI = "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz"
SRC_URI = "https://s3.amazonaws.com/json-c_releases/releases/${BP}.tar.gz \
file://0001-json_tokener-requires-INF-and-NAN.patch \
"
SRC_URI[md5sum] = "3ca4bbb881dfc4017e8021b5e0a8c491"
SRC_URI[sha256sum] = "000c01b2b3f82dcb4261751eb71f1b084404fb7d6a282f06074d3c17078b9f3f"
@@ -17,5 +19,3 @@ do_configure_prepend() {
# Clean up autoconf cruft that should not be in the tarball
rm -f ${S}/config.status
}
CFLAGS += "-Wno-error=unused-but-set-variable"