Commit 3c07f8e89488c208391863cc7e26d106d7c0e46e

Authored by pbrook
1 parent 72f341ed

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
Showing 3 changed files with 6 additions and 4 deletions
gdbstub.c
@@ -987,7 +987,8 @@ static void gdb_read(void *opaque) @@ -987,7 +987,8 @@ static void gdb_read(void *opaque)
987 qemu_del_vm_stop_handler(gdb_vm_stopped, s); 987 qemu_del_vm_stop_handler(gdb_vm_stopped, s);
988 qemu_set_fd_handler(s->fd, NULL, NULL, NULL); 988 qemu_set_fd_handler(s->fd, NULL, NULL, NULL);
989 qemu_free(s); 989 qemu_free(s);
990 - vm_start(); 990 + if (autostart)
  991 + vm_start();
991 } else { 992 } else {
992 for(i = 0; i < size; i++) 993 for(i = 0; i < size; i++)
993 gdb_read_byte(s, buf[i]); 994 gdb_read_byte(s, buf[i]);
@@ -172,6 +172,7 @@ int daemonize = 0; @@ -172,6 +172,7 @@ int daemonize = 0;
172 const char *option_rom[MAX_OPTION_ROMS]; 172 const char *option_rom[MAX_OPTION_ROMS];
173 int nb_option_roms; 173 int nb_option_roms;
174 int semihosting_enabled = 0; 174 int semihosting_enabled = 0;
  175 +int autostart = 1;
175 176
176 /***********************************************************/ 177 /***********************************************************/
177 /* x86 ISA bus support */ 178 /* x86 ISA bus support */
@@ -6530,7 +6531,6 @@ int main(int argc, char **argv) @@ -6530,7 +6531,6 @@ int main(int argc, char **argv)
6530 const char *kernel_filename, *kernel_cmdline; 6531 const char *kernel_filename, *kernel_cmdline;
6531 DisplayState *ds = &display_state; 6532 DisplayState *ds = &display_state;
6532 int cyls, heads, secs, translation; 6533 int cyls, heads, secs, translation;
6533 - int start_emulation = 1;  
6534 char net_clients[MAX_NET_CLIENTS][256]; 6534 char net_clients[MAX_NET_CLIENTS][256];
6535 int nb_net_clients; 6535 int nb_net_clients;
6536 int optind; 6536 int optind;
@@ -6838,7 +6838,7 @@ int main(int argc, char **argv) @@ -6838,7 +6838,7 @@ int main(int argc, char **argv)
6838 bios_dir = optarg; 6838 bios_dir = optarg;
6839 break; 6839 break;
6840 case QEMU_OPTION_S: 6840 case QEMU_OPTION_S:
6841 - start_emulation = 0; 6841 + autostart = 0;
6842 break; 6842 break;
6843 case QEMU_OPTION_k: 6843 case QEMU_OPTION_k:
6844 keyboard_layout = optarg; 6844 keyboard_layout = optarg;
@@ -7254,7 +7254,7 @@ int main(int argc, char **argv) @@ -7254,7 +7254,7 @@ int main(int argc, char **argv)
7254 { 7254 {
7255 /* XXX: simplify init */ 7255 /* XXX: simplify init */
7256 read_passwords(); 7256 read_passwords();
7257 - if (start_emulation) { 7257 + if (autostart) {
7258 vm_start(); 7258 vm_start();
7259 } 7259 }
7260 } 7260 }
@@ -160,6 +160,7 @@ extern int usb_enabled; @@ -160,6 +160,7 @@ extern int usb_enabled;
160 extern int smp_cpus; 160 extern int smp_cpus;
161 extern int no_quit; 161 extern int no_quit;
162 extern int semihosting_enabled; 162 extern int semihosting_enabled;
  163 +extern int autostart;
163 164
164 #define MAX_OPTION_ROMS 16 165 #define MAX_OPTION_ROMS 16
165 extern const char *option_rom[MAX_OPTION_ROMS]; 166 extern const char *option_rom[MAX_OPTION_ROMS];