blob: 30ecff9747ee0868abd82868a2e0ffc7da792fa5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
Based on upstream [1] commits:
- 161dff8321df ("Fix error type-punned pointer warning")
- d7b67db02aaa ("Fix error type-punned pointer warning")
[1] https://github.com/json-parser/json-parser
Upstream-PR: https://github.com/bitlbee/bitlbee/pull/162
diff --git a/lib/json.c b/lib/json.c
index 24288f94..2150cbaf 100644
--- a/lib/json.c
+++ b/lib/json.c
@@ -139,7 +139,7 @@ static int new_value
return 0;
}
- value->_reserved.object_mem = (*(char **) &value->u.object.values) + values_size;
+ value->_reserved.object_mem = (void *) (((char *) value->u.object.values) + values_size);
value->u.object.length = 0;
break;
@@ -406,7 +406,8 @@ json_value * json_parse_ex(json_settings * settings,
case json_object:
if (state.first_pass) {
- (*(json_char **) &top->u.object.values) += string_length + 1;
+ json_char **chars = (json_char **) &top->u.object.values;
+ chars[0] += string_length + 1;
} else {
top->u.object.values [top->u.object.length].name
= (json_char *) top->_reserved.object_mem;
|