From faaa215e905baca8b3d2e9deb2fd2a7ef1817648 Mon Sep 17 00:00:00 2001 From: Scott James Remnant Date: Thu, 18 Mar 2010 05:06:11 +0000 Subject: [PATCH] [terminal] guard open and close against repeated calls Since we have a status flag whether or not the terminal fd is open, use it in the open and close functions to guard against repeated calls. --- src/libply-splash-core/ply-terminal.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/libply-splash-core/ply-terminal.c b/src/libply-splash-core/ply-terminal.c index aeb6159b..4b4b2871 100644 --- a/src/libply-splash-core/ply-terminal.c +++ b/src/libply-splash-core/ply-terminal.c @@ -436,6 +436,9 @@ ply_terminal_open (ply_terminal_t *terminal) { assert (terminal != NULL); + if (terminal->is_open) + return true; + ply_trace ("trying to open terminal '%s'", terminal->name); if (!ply_terminal_open_device (terminal)) @@ -497,6 +500,9 @@ ply_terminal_is_active (ply_terminal_t *terminal) void ply_terminal_close (ply_terminal_t *terminal) { + if (!terminal->is_open) + return; + terminal->is_open = false; ply_terminal_stop_watching_for_vt_changes (terminal);