diff options
Diffstat (limited to 'data/vim/patches/8.1.0731')
-rw-r--r-- | data/vim/patches/8.1.0731 | 228 |
1 files changed, 0 insertions, 228 deletions
diff --git a/data/vim/patches/8.1.0731 b/data/vim/patches/8.1.0731 deleted file mode 100644 index ee9223a98..000000000 --- a/data/vim/patches/8.1.0731 +++ /dev/null @@ -1,228 +0,0 @@ -To: vim_dev@googlegroups.com -Subject: Patch 8.1.0731 -Fcc: outbox -From: Bram Moolenaar <Bram@moolenaar.net> -Mime-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit ------------- - -Patch 8.1.0731 -Problem: JS encoding does not handle negative infinity. -Solution: Add support for negative infinity for JS encoding. (Dominique - Pelle, closes #3792) -Files: runtime/doc/eval.txt, src/json.c, src/testdir/test_json.vim - - -*** ../vim-8.1.0730/runtime/doc/eval.txt 2019-01-11 14:49:25.380107431 +0100 ---- runtime/doc/eval.txt 2019-01-12 14:20:11.501189651 +0100 -*************** -*** 5706,5712 **** - "[1, 2, ]" is the same as "[1, 2]". - - More floating point numbers are recognized, e.g. "1." for - "1.0", or "001.2" for "1.2". Special floating point values -! "Infinity" and "NaN" (capitalization ignored) are accepted. - - Leading zeroes in integer numbers are ignored, e.g. "012" - for "12" or "-012" for "-12". - - Capitalization is ignored in literal names null, true or ---- 5726,5733 ---- - "[1, 2, ]" is the same as "[1, 2]". - - More floating point numbers are recognized, e.g. "1." for - "1.0", or "001.2" for "1.2". Special floating point values -! "Infinity", "-Infinity" and "NaN" (capitalization ignored) -! are accepted. - - Leading zeroes in integer numbers are ignored, e.g. "012" - for "12" or "-012" for "-12". - - Capitalization is ignored in literal names null, true or -*************** -*** 5735,5740 **** ---- 5756,5762 ---- - Float floating point number - Float nan "NaN" - Float inf "Infinity" -+ Float -inf "-Infinity" - String in double quotes (possibly null) - Funcref not possible, error - List as an array (possibly null); when -*** ../vim-8.1.0730/src/json.c 2018-12-21 16:04:16.324437435 +0100 ---- src/json.c 2019-01-12 14:20:11.501189651 +0100 -*************** -*** 316,322 **** - if (isnan(val->vval.v_float)) - ga_concat(gap, (char_u *)"NaN"); - else if (isinf(val->vval.v_float)) -! ga_concat(gap, (char_u *)"Infinity"); - else - # endif - { ---- 316,327 ---- - if (isnan(val->vval.v_float)) - ga_concat(gap, (char_u *)"NaN"); - else if (isinf(val->vval.v_float)) -! { -! if (val->vval.v_float < 0.0) -! ga_concat(gap, (char_u *)"-Infinity"); -! else -! ga_concat(gap, (char_u *)"Infinity"); -! } - else - # endif - { -*************** -*** 736,742 **** - break; - - default: -! if (VIM_ISDIGIT(*p) || *p == '-') - { - #ifdef FEAT_FLOAT - char_u *sp = p; ---- 741,747 ---- - break; - - default: -! if (VIM_ISDIGIT(*p) || (*p == '-' && VIM_ISDIGIT(p[1]))) - { - #ifdef FEAT_FLOAT - char_u *sp = p; -*************** -*** 834,839 **** ---- 839,855 ---- - retval = OK; - break; - } -+ if (STRNICMP((char *)p, "-Infinity", 9) == 0) -+ { -+ reader->js_used += 9; -+ if (cur_item != NULL) -+ { -+ cur_item->v_type = VAR_FLOAT; -+ cur_item->vval.v_float = -INFINITY; -+ } -+ retval = OK; -+ break; -+ } - if (STRNICMP((char *)p, "Infinity", 8) == 0) - { - reader->js_used += 8; -*************** -*** 851,856 **** ---- 867,873 ---- - if ( - (len < 5 && STRNICMP((char *)p, "false", len) == 0) - #ifdef FEAT_FLOAT -+ || (len < 9 && STRNICMP((char *)p, "-Infinity", len) == 0) - || (len < 8 && STRNICMP((char *)p, "Infinity", len) == 0) - || (len < 3 && STRNICMP((char *)p, "NaN", len) == 0) - #endif -*************** -*** 1072,1078 **** - * Return FAIL if the message has a decoding error. - * Return MAYBE if the message is truncated, need to read more. - * This only works reliable if the message contains an object, array or -! * string. A number might be trucated without knowing. - * Does not advance the reader. - */ - int ---- 1089,1095 ---- - * Return FAIL if the message has a decoding error. - * Return MAYBE if the message is truncated, need to read more. - * This only works reliable if the message contains an object, array or -! * string. A number might be truncated without knowing. - * Does not advance the reader. - */ - int -*** ../vim-8.1.0730/src/testdir/test_json.vim 2018-03-13 13:06:11.000000000 +0100 ---- src/testdir/test_json.vim 2019-01-12 14:20:11.501189651 +0100 -*************** -*** 29,36 **** - if has('float') - let s:jsonfl = '12.34' - let s:varfl = 12.34 -! let s:jsoninf = 'Infinity' -! let s:varinf = 1.0 / 0.0 - let s:jsonnan = 'NaN' - let s:varnan = 0.0 / 0.0 - endif ---- 29,38 ---- - if has('float') - let s:jsonfl = '12.34' - let s:varfl = 12.34 -! let s:jsonneginf = '-Infinity' -! let s:jsonposinf = 'Infinity' -! let s:varneginf = -1.0 / 0.0 -! let s:varposinf = 1.0 / 0.0 - let s:jsonnan = 'NaN' - let s:varnan = 0.0 / 0.0 - endif -*************** -*** 85,91 **** - call assert_equal(s:jsonnr, json_encode(s:varnr)) - if has('float') - call assert_equal(s:jsonfl, json_encode(s:varfl)) -! call assert_equal(s:jsoninf, json_encode(s:varinf)) - call assert_equal(s:jsonnan, json_encode(s:varnan)) - endif - ---- 87,94 ---- - call assert_equal(s:jsonnr, json_encode(s:varnr)) - if has('float') - call assert_equal(s:jsonfl, json_encode(s:varfl)) -! call assert_equal(s:jsonneginf, json_encode(s:varneginf)) -! call assert_equal(s:jsonposinf, json_encode(s:varposinf)) - call assert_equal(s:jsonnan, json_encode(s:varnan)) - endif - -*************** -*** 202,208 **** - call assert_equal(s:jsonnr, js_encode(s:varnr)) - if has('float') - call assert_equal(s:jsonfl, js_encode(s:varfl)) -! call assert_equal(s:jsoninf, js_encode(s:varinf)) - call assert_equal(s:jsonnan, js_encode(s:varnan)) - endif - ---- 205,212 ---- - call assert_equal(s:jsonnr, js_encode(s:varnr)) - if has('float') - call assert_equal(s:jsonfl, js_encode(s:varfl)) -! call assert_equal(s:jsonneginf, js_encode(s:varneginf)) -! call assert_equal(s:jsonposinf, js_encode(s:varposinf)) - call assert_equal(s:jsonnan, js_encode(s:varnan)) - endif - -*************** -*** 242,248 **** - call assert_equal(s:varnr, js_decode(s:jsonnr)) - if has('float') - call assert_equal(s:varfl, js_decode(s:jsonfl)) -! call assert_equal(s:varinf, js_decode(s:jsoninf)) - call assert_true(isnan(js_decode(s:jsonnan))) - endif - ---- 246,253 ---- - call assert_equal(s:varnr, js_decode(s:jsonnr)) - if has('float') - call assert_equal(s:varfl, js_decode(s:jsonfl)) -! call assert_equal(s:varneginf, js_decode(s:jsonneginf)) -! call assert_equal(s:varposinf, js_decode(s:jsonposinf)) - call assert_true(isnan(js_decode(s:jsonnan))) - endif - -*** ../vim-8.1.0730/src/version.c 2019-01-12 13:50:27.712026891 +0100 ---- src/version.c 2019-01-12 14:21:33.808675256 +0100 -*************** -*** 797,798 **** ---- 797,800 ---- - { /* Add new patch number below this line */ -+ /**/ -+ 731, - /**/ - --- -Apathy Error: Don't bother striking any key. - - /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ -/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ -\\\ an exciting new programming language -- http://www.Zimbu.org /// - \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |