mirror of
https://github.com/lihop/godot-xterm.git
synced 2025-05-08 05:15:30 +02:00
Prevent exit callback instance leaks
De-references pty_baton's exit callback after it is called so it can be automatically released, preventing leaked instances. Adds basic implementation for Pipe's get_status() method and forces PTY to wait for child process to exit to ensure exit callback is cleaned up. Adds a test to check that exit callback is still called as usual.
This commit is contained in:
parent
38927e0a3e
commit
0ae1d80abb
5 changed files with 24 additions and 4 deletions
|
@ -96,9 +96,10 @@ func open(cols: int = DEFAULT_COLS, rows: int = DEFAULT_ROWS) -> Array:
|
|||
|
||||
|
||||
func _exit_tree():
|
||||
_exit_cb = null
|
||||
if _pid > 1:
|
||||
LibuvUtils.kill(_pid, Signal.SIGHUP)
|
||||
while _pipe.get_status() != 0:
|
||||
continue
|
||||
|
||||
|
||||
func _on_pipe_data_received(data):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue