]> git.ipfire.org Git - thirdparty/json-c.git/commitdiff
More fixes for old MSVC builds.
authorEric Haszlakiewicz <erh+git@nimenees.com>
Sun, 7 Jun 2020 15:25:59 +0000 (15:25 +0000)
committerEric Haszlakiewicz <erh+git@nimenees.com>
Sun, 7 Jun 2020 15:25:59 +0000 (15:25 +0000)
json_object.c

index 7069f5d61cb636eb9bf8ec5cd877d5679d187901..dfe7bb2d5bdee269f148b390d96f9e947de861b0 100644 (file)
@@ -1431,9 +1431,9 @@ static int json_object_string_to_json_string(struct json_object *jso, struct pri
                                              int level, int flags)
 {
 #define jso ((struct json_object_base *)jso)
-       printbuf_strappend(pb, "\"");
        ssize_t len = JC_STRING(jso)->len;
-       json_escape_str(pb, get_string_component(jso), len < 0 ? -len : len, flags);
+       printbuf_strappend(pb, "\"");
+       json_escape_str(pb, get_string_component(jso), len < 0 ? -(ssize_t)len : len, flags);
        printbuf_strappend(pb, "\"");
        return 0;
 #undef jso
@@ -1517,7 +1517,7 @@ int json_object_get_string_len(const struct json_object *jso)
        {
        case json_type_string:
                len = JC_STRING_C(jso)->len;
-               return (len < 0) ? -len : len;
+               return (len < 0) ? -(ssize_t)len : len;
        default: return 0;
        }
 #undef jso
@@ -1554,13 +1554,13 @@ static int _json_object_set_string_len(json_object *jso, const char *s, size_t l
                if (JC_STRING(jso)->len < 0)
                        free(JC_STRING(jso)->c_string.pdata);
                JC_STRING(jso)->c_string.pdata = dstbuf;
-               newlen = -len;
+               newlen = -(ssize_t)len;
        }
        else if (JC_STRING(jso)->len < 0)
        {
                // We've got enough room in the separate allocated buffer,
                // so use it as-is and continue to indicate that pdata is used.
-               newlen = -len;
+               newlen = -(ssize_t)len;
        }
 
        memcpy(dstbuf, (const void *)s, len);