Fix memory leaks in LspEndpoint

This commit is contained in:
Ashish Bansal 2019-12-08 00:06:38 +05:30
parent b5d7829011
commit 59c48cdd62
No known key found for this signature in database
GPG Key ID: EE0F496D423CE445
1 changed files with 7 additions and 4 deletions

View File

@ -88,11 +88,14 @@ class LspEndpoint(threading.Thread):
self.next_id += 1
cond = threading.Condition()
self.event_dict[current_id] = cond
cond.acquire()
self.send_message(method_name, kwargs, current_id)
cond.wait()
cond.release()
result, error = self.response_dict[current_id]
self.event_dict.pop(current_id)
result, error = self.response_dict.pop(current_id)
if error:
raise lsp_structs.ResponseError(error.get("code"), error.get("message"), error.get("data"))
return result