X-Git-Url: http://wpitchoune.net/gitweb/?p=psensor-pkg-debian.git;a=blobdiff_plain;f=src%2Flib%2Fpsensor_json.c;h=2402c1aa16723a18bc0a3852f8292fc416c709f2;hp=1d4668c26cdce0db2ae9591b7225a6e5a6ed17d3;hb=e248180cc4ebc258fdd5778a26c08287089165b1;hpb=f055e7507526592d3a74c652f5f053701614c9c0 diff --git a/src/lib/psensor_json.c b/src/lib/psensor_json.c index 1d4668c..2402c1a 100644 --- a/src/lib/psensor_json.c +++ b/src/lib/psensor_json.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2010-2012 jeanfi@gmail.com + * Copyright (C) 2010-2014 jeanfi@gmail.com * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -39,7 +39,7 @@ measure_to_json_object(struct measure *m) json_object_object_add(o, ATT_MEASURE_VALUE, - json_object_new_double(m->value.d_num)); + json_object_new_double(m->value)); json_object_object_add(o, ATT_MEASURE_TIME, json_object_new_int((m->time).tv_sec)); return o; @@ -89,7 +89,7 @@ static json_object *sensor_to_json(struct psensor *s) mo = json_object_new_object(); json_object_object_add(mo, ATT_MEASURE_VALUE, - json_object_new_double(m->value.d_num)); + json_object_new_double(m->value)); json_object_object_add(mo, ATT_MEASURE_TIME, json_object_new_int((m->time).tv_sec)); json_object_object_add(obj, ATT_SENSOR_LAST_MEASURE, mo); @@ -140,9 +140,9 @@ struct psensor *psensor_new_from_json(json_object *o, struct psensor *s; char *eid, *url; - oid = json_object_object_get(o, "id"); - oname = json_object_object_get(o, "name"); - otype = json_object_object_get(o, "type"); + json_object_object_get_ex(o, "id", &oid); + json_object_object_get_ex(o, "name", &oname); + json_object_object_get_ex(o, "type", &otype); eid = url_encode(json_object_get_string(oid)); url = malloc(strlen(sensors_url) + 1 + strlen(eid) + 1); @@ -150,6 +150,7 @@ struct psensor *psensor_new_from_json(json_object *o, s = psensor_create(strdup(url), strdup(json_object_get_string(oname)), + NULL, json_object_get_int(otype) | SENSOR_TYPE_REMOTE, values_max_length); s->url = url;