mirror of
https://github.com/vim/vim.git
synced 2025-10-02 05:04:20 -04:00
patch 7.4.1617
Problem: When a JSON message is split it isn't decoded. Solution: Wait a short time for the rest of the message to arrive.
This commit is contained in:
@@ -104,11 +104,36 @@ class ThreadedTCPRequestHandler(socketserver.BaseRequestHandler):
|
||||
print("sending: {}".format(cmd))
|
||||
self.request.sendall(cmd.encode('utf-8'))
|
||||
response = "ok"
|
||||
elif decoded[1] == 'malformed':
|
||||
elif decoded[1] == 'malformed1':
|
||||
cmd = '["ex",":"]wrong!["ex","smi"]'
|
||||
print("sending: {}".format(cmd))
|
||||
self.request.sendall(cmd.encode('utf-8'))
|
||||
response = "ok"
|
||||
elif decoded[1] == 'malformed2':
|
||||
cmd = '"unterminated string'
|
||||
print("sending: {}".format(cmd))
|
||||
self.request.sendall(cmd.encode('utf-8'))
|
||||
response = "ok"
|
||||
# Need to wait for Vim to give up, otherwise the double
|
||||
# quote in the "ok" response terminates the string.
|
||||
time.sleep(0.2)
|
||||
elif decoded[1] == 'malformed3':
|
||||
cmd = '["ex","missing ]"'
|
||||
print("sending: {}".format(cmd))
|
||||
self.request.sendall(cmd.encode('utf-8'))
|
||||
response = "ok"
|
||||
# Need to wait for Vim to give up, otherwise the ]
|
||||
# in the "ok" response terminates the list.
|
||||
time.sleep(0.2)
|
||||
elif decoded[1] == 'split':
|
||||
cmd = '["ex","let '
|
||||
print("sending: {}".format(cmd))
|
||||
self.request.sendall(cmd.encode('utf-8'))
|
||||
time.sleep(0.01)
|
||||
cmd = 'g:split = 123"]'
|
||||
print("sending: {}".format(cmd))
|
||||
self.request.sendall(cmd.encode('utf-8'))
|
||||
response = "ok"
|
||||
elif decoded[1] == 'an expr':
|
||||
# Send an expr request.
|
||||
cmd = '["expr","setline(\\"$\\", [\\"one\\",\\"two\\",\\"three\\"])"]'
|
||||
|
Reference in New Issue
Block a user