aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2007-01-21 16:47:01 +0000
committerpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2007-01-21 16:47:01 +0000
commit3c07f8e89488c208391863cc7e26d106d7c0e46e (patch)
treea990778ec78e8b994eaca35912036546f9272372
parent72f341ed1ef52607070120a7bbdc350edf52da47 (diff)
Don't resume guest when gdb connection terminates and -S specified.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2343 c046a42c-6fe2-441c-8c8c-71466251a162
-rw-r--r--gdbstub.c3
-rw-r--r--vl.c6
-rw-r--r--vl.h1
3 files changed, 6 insertions, 4 deletions
diff --git a/gdbstub.c b/gdbstub.c
index 9015d625ce..2311a6c017 100644
--- a/gdbstub.c
+++ b/gdbstub.c
@@ -987,7 +987,8 @@ static void gdb_read(void *opaque)
qemu_del_vm_stop_handler(gdb_vm_stopped, s);
qemu_set_fd_handler(s->fd, NULL, NULL, NULL);
qemu_free(s);
- vm_start();
+ if (autostart)
+ vm_start();
} else {
for(i = 0; i < size; i++)
gdb_read_byte(s, buf[i]);
diff --git a/vl.c b/vl.c
index 9f620cb1de..f92c989d48 100644
--- a/vl.c
+++ b/vl.c
@@ -172,6 +172,7 @@ int daemonize = 0;
const char *option_rom[MAX_OPTION_ROMS];
int nb_option_roms;
int semihosting_enabled = 0;
+int autostart = 1;
/***********************************************************/
/* x86 ISA bus support */
@@ -6530,7 +6531,6 @@ int main(int argc, char **argv)
const char *kernel_filename, *kernel_cmdline;
DisplayState *ds = &display_state;
int cyls, heads, secs, translation;
- int start_emulation = 1;
char net_clients[MAX_NET_CLIENTS][256];
int nb_net_clients;
int optind;
@@ -6838,7 +6838,7 @@ int main(int argc, char **argv)
bios_dir = optarg;
break;
case QEMU_OPTION_S:
- start_emulation = 0;
+ autostart = 0;
break;
case QEMU_OPTION_k:
keyboard_layout = optarg;
@@ -7254,7 +7254,7 @@ int main(int argc, char **argv)
{
/* XXX: simplify init */
read_passwords();
- if (start_emulation) {
+ if (autostart) {
vm_start();
}
}
diff --git a/vl.h b/vl.h
index 6bc2d73f6a..543eb722c4 100644
--- a/vl.h
+++ b/vl.h
@@ -160,6 +160,7 @@ extern int usb_enabled;
extern int smp_cpus;
extern int no_quit;
extern int semihosting_enabled;
+extern int autostart;
#define MAX_OPTION_ROMS 16
extern const char *option_rom[MAX_OPTION_ROMS];