diff options
| author | Liguros - Gitlab CI/CD [master] <gitlab@liguros.net> | 2021-03-01 00:37:58 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [master] <gitlab@liguros.net> | 2021-03-01 00:37:58 +0000 |
| commit | 8ddb1a3d1229412a438971f82d37d518a0223726 (patch) | |
| tree | 83438b5ddb9d23a390f1a3fc505303d3d2223bf2 /dev-python/ujson/files/ujson-1.35-sort_keys-segfault.patch | |
| parent | 9acab46e1a820daece7b2e631485c157ce2210ad (diff) | |
| download | baldeagleos-repo-21.1.5.tar.gz baldeagleos-repo-21.1.5.tar.xz baldeagleos-repo-21.1.5.zip | |
Adding metadatav21.1.5
Diffstat (limited to 'dev-python/ujson/files/ujson-1.35-sort_keys-segfault.patch')
| -rw-r--r-- | dev-python/ujson/files/ujson-1.35-sort_keys-segfault.patch | 73 |
1 files changed, 0 insertions, 73 deletions
diff --git a/dev-python/ujson/files/ujson-1.35-sort_keys-segfault.patch b/dev-python/ujson/files/ujson-1.35-sort_keys-segfault.patch deleted file mode 100644 index 7239bca3e238..000000000000 --- a/dev-python/ujson/files/ujson-1.35-sort_keys-segfault.patch +++ /dev/null @@ -1,73 +0,0 @@ -commit 870ee48fe109c289033cd0b7543b6f5ea4e6f128 -Author: Joakim Hamren <joakim.hamren@gmail.com> -Date: Sat Feb 4 01:07:52 2017 +0100 - - Fixes for sort_keys bug and a typo. - - - Fixed segfault when using sort_keys=True on dict with unorderable keys (GH247) - - - Fixed refcount becoming negative when using sort_keys=True (GH243) - - - Fixed compile error when defining JSON_NO_EXTRA_WHITESPACE - caused by a wrongly named variable. (GH245) - -diff --git a/lib/ultrajsonenc.c b/lib/ultrajsonenc.c -index cb10024..1bfa8f4 100644 ---- a/lib/ultrajsonenc.c -+++ b/lib/ultrajsonenc.c -@@ -717,7 +717,7 @@ static void encode(JSOBJ obj, JSONObjectEncoder *enc, const char *name, size_t c - { - const char *value; - char *objName; -- int count; -+ int count, res; - JSOBJ iterObj; - size_t szlen; - JSONTypeContext tc; -@@ -796,7 +796,7 @@ static void encode(JSOBJ obj, JSONObjectEncoder *enc, const char *name, size_t c - { - Buffer_AppendCharUnchecked (enc, ','); - #ifndef JSON_NO_EXTRA_WHITESPACE -- Buffer_AppendCharUnchecked (buffer, ' '); -+ Buffer_AppendCharUnchecked (enc, ' '); - #endif - Buffer_AppendIndentNewlineUnchecked (enc); - } -@@ -823,8 +823,16 @@ static void encode(JSOBJ obj, JSONObjectEncoder *enc, const char *name, size_t c - Buffer_AppendCharUnchecked (enc, '{'); - Buffer_AppendIndentNewlineUnchecked (enc); - -- while (enc->iterNext(obj, &tc)) -+ while ((res = enc->iterNext(obj, &tc))) - { -+ if(res < 0) -+ { -+ enc->iterEnd(obj, &tc); -+ enc->endTypeContext(obj, &tc); -+ enc->level--; -+ return; -+ } -+ - if (count > 0) - { - Buffer_AppendCharUnchecked (enc, ','); -diff --git a/python/objToJSON.c b/python/objToJSON.c -index 1960d40..8133fb5 100644 ---- a/python/objToJSON.c -+++ b/python/objToJSON.c -@@ -537,6 +537,7 @@ static int SortedDict_iterNext(JSOBJ obj, JSONTypeContext *tc) - // Sort the list. - if (PyList_Sort(items) < 0) - { -+ PyErr_SetString(PyExc_ValueError, "unorderable keys"); - goto error; - } - -@@ -607,7 +608,6 @@ static void SortedDict_iterEnd(JSOBJ obj, JSONTypeContext *tc) - { - GET_TC(tc)->itemName = NULL; - GET_TC(tc)->itemValue = NULL; -- Py_DECREF(GET_TC(tc)->newObj); - Py_DECREF(GET_TC(tc)->dictObj); - PRINTMARK(); - } |
