Age | Commit message (Collapse) | Author |
|
Problem: Too many #ifdefs.
Solution: Graduate FEAT_MBYTE, part 2.
|
|
Problem: Depending on the configuration some functions are unused.
Solution: Add more #ifdefs, remove unused functions. (Dominique Pelle,
closes #3822)
|
|
Problem: Various problems when using Vim on VMS.
Solution: Various fixes. Define long_long_T. (Zoltan Arpadffy)
|
|
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.
|
|
Problem: Cannot handle binary data.
Solution: Add the Blob type. (Yasuhiro Matsumoto, closes #3638)
|
|
Problem: JS encoding does not handle negative infinity.
Solution: Add support for negative infinity for JS encoding. (Dominique
Pelle, closes #3792)
|
|
Problem: Get_tv function names are not consistent.
Solution: Rename to tv_get.
|
|
Problem: Unnecessary static function prototypes.
Solution: Remove unnecessary prototypes.
|
|
Problem: No compiler warning for wrong format in vim_snprintf().
Solution: Add printf attribute for gcc. Fix reported problems.
|
|
Problem: Crash in parsing JSON.
Solution: Fail when using array or dict as dict key. (Damien)
|
|
Problem: Encoding empty string to JSON sometimes gives "null".
Solution: Handle NULL string as empty string. (closes #2446)
|
|
Problem: Cannot use an empty key in json.
Solution: Allow for using an empty key.
|
|
Problem: When decoding JSON with a JS style object the JSON test may use a
NULL pointer. (Coverity)
Solution: Check for a NULL pointer.
|
|
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)
|
|
Problem: JS style JSON does not support single quotes.
Solution: Allow for single quotes. (Yasuhiro Matsumoto, closes #1371)
|
|
Problem: Channel test fails for using freed memory.
Solution: Fix memory use in json_decode().
|
|
Problem: For complicated string json_decode() may run out of stack space.
Solution: Change the recursive solution into an iterative solution.
|
|
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.
|
|
Problem: Cannot make Vim fail on an internal error.
Solution: Add IEMSG() and IEMSG2(). (Domenique Pelle) Avoid reporting an
internal error without mentioning where.
|
|
Problem: VMS has a problem with infinity.
Solution: Avoid an overflow. (Zoltan Arpadffy)
|
|
Problem: Vim does not build on VMS systems.
Solution: Various changes for VMS. (Zoltan Arpadffy)
|
|
Problem: Using NUL instead of NULL.
Solution: Change to NULL. (Dominique Pelle)
|
|
Problem: Modelines in source code are inconsistant.
Solution: Use the same line in most files. Add 'noet'. (Naruhiko Nishino)
|
|
Problem: Two JSON messages are sent without a separator.
Solution: Separate messages with a NL. (closes #1001)
|
|
Problem: Number variables are not 64 bits while they could be.
Solution: Add the num64 feature. (Ken Takata)
|
|
Problem: Warnings reported by cppcheck.
Solution: Fix the warnings. (Dominique Pelle)
|
|
Problem: When reading JSON from a channel all readahead is used.
Solution: Use the fill function to reduce overhead.
|
|
Problem: When a JSON message is split it isn't decoded.
Solution: Wait a short time for the rest of the message to arrive.
|
|
Problem: Passing cookie to a callback is clumsy.
Solution: Change function() to take arguments and return a partial.
|
|
Problem: Error for locked item when using json_decode(). (Shougo)
Solution: Initialize v_lock.
|
|
Problem: Can't build without the float feature.
Solution: Add #ifdefs. (Nick Owens, closes #667)
|
|
Problem: Crash when using json_decode().
Solution: Terminate string with a NUL byte.
|
|
Problem: Memory corruption when 'encoding' is not utf-8.
Solution: Convert decoded string later.
|
|
Problem: Can't build with JSON but without multi-byte.
Solution: Fix pointer name.
|
|
Problem: Can't build on Windows.
Solution: Change #ifdefs. Only define isnan when used.
|
|
Problem: Using uninitialzed variable.
Solution: Initialize vc_type.
|
|
Problem: Old system doesn't have isinf() and NAN. (Ben Fritz)
Solution: Adjust #ifdefs. Detect isnan() and isinf() functions with
configure. Use a replacement when missing. (Kazunobu Kuriyama)
|
|
Problem: JSON encoding doesn't hanel surrogate pair.
Solution: Improve multi-byte handling of JSON. (Yasuhiro Matsumoto)
|
|
Problem: When encoding JSON, turning NaN and Infinity into null without
giving an error is not useful.
Solution: Pass NaN and Infinity on. If the receiver can't handle them it
will generate the error.
|
|
Problem: MS-Windows doesn't have isnan() and isinf().
Solution: Use _isnan() and _isinf().
|
|
Problem: json_encode() does not handle NaN and inf properly. (David
Barnett)
Solution: For JSON turn them into "null". For JS use "NaN" and "Infinity".
Add isnan().
|
|
Problem: Compiler warning for unreachable code.
Solution: Remove a "break". (Danek Duvall)
|
|
Problem: Using a channel handle does not allow for freeing it when unused.
Solution: Add the Channel variable type.
|
|
Problem: jsonencode() is not producing strict JSON.
Solution: Add jsencode() and jsdecode(). Make jsonencode() and jsondecode()
strict.
|
|
Problem: When jsonencode() fails it still returns something.
Solution: Return an empty string on failure.
|
|
Problem: Encoding {'key':} to JSON doesn't give an error (Tyru)
Solution: Give an error.
|
|
Problem: Pending channel messages are garbage collected. Leaking memory in
ch_sendexpr(). Leaking memory for a decoded JSON string.
Solution: Mark the message list as used. Free the encoded JSON. Don't save
the JSON string.
|
|
Problem: Compiler warning for uninitialized variable.
Solution: Initialize it. (Elias Diem)
|
|
Problem: Can't handle two messages right after each other.
Solution: Find the end of the JSON. Read more when incomplete. Add a C
test for the JSON decoding.
|
|
Problem: JSON messages are not parsed properly.
Solution: Queue received messages.
|