summaryrefslogtreecommitdiff
path: root/src/json.c
Commit message (Collapse)AuthorAgeFilesLines
* patch 8.2.3315: cannot use single quote in a float number for readabilityv8.2.3315Bram Moolenaar2021-08-081-2/+3
| | | | | Problem: Cannot use single quote in a float number for readability. Solution: Support single quotes like in numbers. (closes #8713)
* patch 8.2.3229: Vim9: runtime and compile time type checks are not the samev8.2.3229Yegappan Lakshmanan2021-07-271-0/+6
| | | | | | Problem: Vim9: runtime and compile time type checks are not the same. Solution: Add more runtime type checks for builtin functions. (Yegappan Lakshmanan, closes #8646)
* patch 8.2.2949: tests failing because no error for float to string conversionv8.2.2949Bram Moolenaar2021-06-061-1/+10
| | | | | | | Problem: Tests failing because there is no error for float to string conversion. Solution: Change the check for failure to check for correct result. Make some conversions strict in Vim9 script.
* patch 8.2.2871: unnessary VIM_ISDIGIT() calls, badly indented codev8.2.2871Dominique Pelle2021-05-181-1/+1
| | | | | | Problem: Unnessary VIM_ISDIGIT() calls, badly indented code. Solution: Call skipdigits() on the next character. Improve indenting. (Dominique Pellé, closes #8227)
* patch 8.2.2842: Vim9: skip argument to searchpair() is not compiledv8.2.2842Bram Moolenaar2021-05-071-0/+1
| | | | | Problem: Vim9: skip argument to searchpair() is not compiled. Solution: Add VAR_INSTR.
* patch 8.2.2488: json_encode() gives generic argument errorv8.2.2488Bram Moolenaar2021-02-081-2/+1
| | | | | Problem: json_encode() gives generic argument error. Solution: Mention the type that can't be encoded. (issue #7802)
* patch 8.2.1281: the "trailing characters" error can be hard to understandv8.2.1281Bram Moolenaar2020-07-231-1/+1
| | | | | Problem: The "trailing characters" error can be hard to understand. Solution: Add the trailing characters to the message.
* patch 8.2.1188: memory leak with invalid json inputv8.2.1188Bram Moolenaar2020-07-121-5/+4
| | | | | | Problem: Memory leak with invalid json input. Solution: Free all keys at the end. (Dominique Pellé, closes #6443, closes #6442)
* patch 8.2.0967: unnecessary type casts for vim_strnsave()v8.2.0967Bram Moolenaar2020-06-121-1/+1
| | | | | Problem: Unnecessary type casts for vim_strnsave(). Solution: Remove the type casts.
* patch 8.2.0800: errors from failing test are unclearv8.2.0800Bram Moolenaar2020-05-191-9/+11
| | | | | Problem: Errors from failing test are unclear. Solution: Include text where parsing failed.
* patch 8.2.0751: Vim9: performance can be improvedv8.2.0751Bram Moolenaar2020-05-131-1/+1
| | | | | | Problem: Vim9: performance can be improved. Solution: Don't call break. Inline check for list materialize. Make an inline version of ga_grow().
* patch 8.2.0517: Vim9: cannot separate "func" and "func(): void"v8.2.0517Bram Moolenaar2020-04-051-0/+1
| | | | | Problem: Vim9: cannot separate "func" and "func(): void". Solution: Use VAR_ANY for "any" and VAR_UNKNOWN for "no type".
* patch 8.2.0334: abort called when using test_void()v8.2.0334Bram Moolenaar2020-02-291-1/+1
| | | | | Problem: Abort called when using test_void(). (Dominique Pelle) Solution: Only give an error, don't abort.
* patch 8.2.0315: build failure on HP-UX systemv8.2.0315Bram Moolenaar2020-02-251-2/+2
| | | | | | Problem: Build failure on HP-UX system. Solution: Use LONG_LONG_MIN instead of LLONG_MIN. Add type casts for switch statement. (John Marriott)
* patch 8.2.0296: mixing up "long long" and __int64 may cause problemsv8.2.0296Bram Moolenaar2020-02-221-1/+1
| | | | | | Problem: Mixing up "long long" and __int64 may cause problems. (John Marriott) Solution: Pass varnumber_T to vim_snprintf(). Add v:numbersize.
* patch 8.2.0159: non-materialized range() list causes problemsv8.2.0159Bram Moolenaar2020-01-271-0/+1
| | | | | Problem: Non-materialized range() list causes problems. (Fujiwara Takuya) Solution: Materialize the list where needed.
* patch 8.2.0155: warnings from MinGW compiler; tests fail without +floatv8.2.0155Bram Moolenaar2020-01-261-3/+5
| | | | | | | Problem: Warnings from MinGW compiler. (John Marriott) Json test fails when building without +float feature. Solution: Init variables. Fix Json parsing. Skip a few tests that require the +float feature.
* patch 8.2.0149: maintaining a Vim9 branch separately is more workv8.2.0149Bram Moolenaar2020-01-261-1/+2
| | | | | Problem: Maintaining a Vim9 branch separately is more work. Solution: Merge the Vim9 script changes.
* patch 8.2.0111: VAR_SPECIAL is also used for booleansv8.2.0111Bram Moolenaar2020-01-111-3/+9
| | | | | Problem: VAR_SPECIAL is also used for booleans. Solution: Add VAR_BOOL for better type checking.
* patch 8.1.2388: using old C style commentsv8.1.2388Bram Moolenaar2019-12-041-43/+43
| | | | | Problem: Using old C style comments. Solution: Use // comments where appropriate.
* patch 8.1.1891: functions used in one file are globalv8.1.1891Bram Moolenaar2019-08-201-1/+1
| | | | | Problem: Functions used in one file are global. Solution: Add "static". (Yegappan Lakshmanan, closes #4840)
* patch 8.1.1735: can't build with tiny featuresv8.1.1735Bram Moolenaar2019-07-221-1/+1
| | | | | Problem: Can't build with tiny features. Solution: Add missing #ifdefs.
* patch 8.1.1734: the evalfunc.c file is too bigv8.1.1734Bram Moolenaar2019-07-221-0/+49
| | | | | Problem: The evalfunc.c file is too big. Solution: Move some functions to other files.
* patch 8.1.1409: Coverity warns for using uninitialized memoryv8.1.1409Bram Moolenaar2019-05-271-2/+5
| | | | | Problem: Coverity warns for using uninitialized memory. Solution: Add a condition to clearing the growarray.
* patch 8.1.1355: obvious mistakes are accepted as valid expressionsv8.1.1355Bram Moolenaar2019-05-191-3/+19
| | | | | | Problem: Obvious mistakes are accepted as valid expressions. Solution: Be more strict about parsing numbers. (Yasuhiro Matsumoto, closes #3981)
* patch 8.1.1158: json encoded string is sometimes missing the final NULv8.1.1158Bram Moolenaar2019-04-121-0/+2
| | | | | Problem: Json encoded string is sometimes missing the final NUL. Solution: Add the NUL. Also for log messages.
* patch 8.1.0806: too many #ifdefsv8.1.0806Bram Moolenaar2019-01-241-29/+4
| | | | | Problem: Too many #ifdefs. Solution: Graduate FEAT_MBYTE, part 2.
* patch 8.1.0785: depending on the configuration some functions are unusedv8.1.0785Bram Moolenaar2019-01-201-0/+4
| | | | | | Problem: Depending on the configuration some functions are unused. Solution: Add more #ifdefs, remove unused functions. (Dominique Pelle, closes #3822)
* patch 8.1.0766: various problems when using Vim on VMSv8.1.0766Bram Moolenaar2019-01-171-1/+1
| | | | | Problem: Various problems when using Vim on VMS. Solution: Various fixes. Define long_long_T. (Zoltan Arpadffy)
* patch 8.1.0743: giving error messages is not flexiblev8.1.0743Bram Moolenaar2019-01-131-12/+12
| | | | | | | | Problem: Giving error messages is not flexible. Solution: Add semsg(). Change argument from "char_u *" to "char *", also for msg() and get rid of most MSG macros. (Ozaki Kiichi, closes #3302) Also make emsg() accept a "char *" argument. Get rid of an enormous number of type casts.
* patch 8.1.0735: cannot handle binary datav8.1.0735Bram Moolenaar2019-01-121-0/+21
| | | | | Problem: Cannot handle binary data. Solution: Add the Blob type. (Yasuhiro Matsumoto, closes #3638)
* patch 8.1.0731: JS encoding does not handle negative infinityv8.1.0731Bram Moolenaar2019-01-121-3/+20
| | | | | | Problem: JS encoding does not handle negative infinity. Solution: Add support for negative infinity for JS encoding. (Dominique Pelle, closes #3792)
* patch 8.1.0615: get_tv function names are not consistentv8.1.0615Bram Moolenaar2018-12-211-1/+1
| | | | | Problem: Get_tv function names are not consistent. Solution: Rename to tv_get.
* patch 8.1.0443: unnecessary static function prototypesv8.1.0443Bram Moolenaar2018-09-301-1/+0
| | | | | Problem: Unnecessary static function prototypes. Solution: Remove unnecessary prototypes.
* patch 8.0.1677: no compiler warning for wrong format in vim_snprintf()v8.0.1677Bram Moolenaar2018-04-081-1/+1
| | | | | Problem: No compiler warning for wrong format in vim_snprintf(). Solution: Add printf attribute for gcc. Fix reported problems.
* patch 8.0.1602: crash in parsing JSONv8.0.1602Bram Moolenaar2018-03-131-1/+13
| | | | | Problem: Crash in parsing JSON. Solution: Fail when using array or dict as dict key. (Damien)
* patch 8.0.1391: encoding empty string to JSON sometimes gives "null"v8.0.1391Bram Moolenaar2017-12-151-3/+3
| | | | | Problem: Encoding empty string to JSON sometimes gives "null". Solution: Handle NULL string as empty string. (closes #2446)
* patch 8.0.0309: cannot use an empty key in jsonv8.0.0309Bram Moolenaar2017-02-051-1/+1
| | | | | Problem: Cannot use an empty key in json. Solution: Allow for using an empty key.
* patch 8.0.0216: decoding js style json may failv8.0.0216Bram Moolenaar2017-01-221-4/+8
| | | | | | Problem: When decoding JSON with a JS style object the JSON test may use a NULL pointer. (Coverity) Solution: Check for a NULL pointer.
* patch 8.0.0180: error E937 is used twicev8.0.0180Bram Moolenaar2017-01-141-1/+1
| | | | | | Problem: Error E937 is used both for duplicate key in JSON and for trying to delete a buffer that is in use. Solution: Rename the JSON error to E938. (Norio Takagi, closes #1376)
* patch 8.0.0171: JS style JSON does not support single quotesv8.0.0171Bram Moolenaar2017-01-111-6/+17
| | | | | Problem: JS style JSON does not support single quotes. Solution: Allow for single quotes. (Yasuhiro Matsumoto, closes #1371)
* patch 8.0.0170: crash in channel testv8.0.0170Bram Moolenaar2017-01-101-1/+2
| | | | | Problem: Channel test fails for using freed memory. Solution: Fix memory use in json_decode().
* patch 8.0.0169: json_decode() may run out of stack spacev8.0.0169Bram Moolenaar2017-01-101-289/+390
| | | | | Problem: For complicated string json_decode() may run out of stack space. Solution: Change the recursive solution into an iterative solution.
* patch 8.0.0166: JSON with a duplicate key gives an internal errorv8.0.0166Bram Moolenaar2017-01-101-1/+27
| | | | | | Problem: JSON with a duplicate key gives an internal error. (Lcd) Solution: Give a normal error. Avoid an error when parsing JSON from a remote client fails.
* patch 8.0.0074v8.0.0074Bram Moolenaar2016-11-101-1/+1
| | | | | | Problem: Cannot make Vim fail on an internal error. Solution: Add IEMSG() and IEMSG2(). (Domenique Pelle) Avoid reporting an internal error without mentioning where.
* patch 8.0.0067v8.0.0067Bram Moolenaar2016-11-061-4/+0
| | | | | Problem: VMS has a problem with infinity. Solution: Avoid an overflow. (Zoltan Arpadffy)
* patch 8.0.0059v8.0.0059Bram Moolenaar2016-11-041-0/+4
| | | | | Problem: Vim does not build on VMS systems. Solution: Various changes for VMS. (Zoltan Arpadffy)
* patch 8.0.0046v8.0.0046Bram Moolenaar2016-10-211-1/+1
| | | | | Problem: Using NUL instead of NULL. Solution: Change to NULL. (Dominique Pelle)
* patch 7.4.2293v7.4.2293Bram Moolenaar2016-08-291-1/+1
| | | | | Problem: Modelines in source code are inconsistant. Solution: Use the same line in most files. Add 'noet'. (Naruhiko Nishino)
* patch 7.4.2258v7.4.2258Bram Moolenaar2016-08-261-10/+25
| | | | | Problem: Two JSON messages are sent without a separator. Solution: Separate messages with a NL. (closes #1001)