From: Hans de Goede Date: Tue, 26 Mar 2013 10:07:55 +0000 (+0100) Subject: qemu-char: Add fe_open tracking X-Git-Tag: TizenStudio_2.0_p2.3.2~208^2~2248 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c0c4bd2cfae0fb83696000f1bfc355f22e2b41cb;p=sdk%2Femulator%2Fqemu.git qemu-char: Add fe_open tracking Add tracking of the fe_open state to struct CharDriverState. Signed-off-by: Hans de Goede Message-id: 1364292483-16564-4-git-send-email-hdegoede@redhat.com Signed-off-by: Anthony Liguori --- diff --git a/include/char/char.h b/include/char/char.h index e9d2c10..dbb1b89 100644 --- a/include/char/char.h +++ b/include/char/char.h @@ -75,6 +75,7 @@ struct CharDriverState { char *label; char *filename; int be_open; + int fe_open; int avail_connections; QemuOpts *opts; QTAILQ_ENTRY(CharDriverState) next; diff --git a/qemu-char.c b/qemu-char.c index 345fd67..c9890ad 100644 --- a/qemu-char.c +++ b/qemu-char.c @@ -3412,6 +3412,10 @@ void qemu_chr_fe_set_echo(struct CharDriverState *chr, bool echo) void qemu_chr_fe_open(struct CharDriverState *chr) { + if (chr->fe_open) { + return; + } + chr->fe_open = 1; if (chr->chr_guest_open) { chr->chr_guest_open(chr); } @@ -3419,6 +3423,10 @@ void qemu_chr_fe_open(struct CharDriverState *chr) void qemu_chr_fe_close(struct CharDriverState *chr) { + if (!chr->fe_open) { + return; + } + chr->fe_open = 0; if (chr->chr_guest_close) { chr->chr_guest_close(chr); }