X-Git-Url: https://review.openocd.org/gitweb?a=blobdiff_plain;ds=sidebyside;f=src%2Fserver%2Fserver.c;h=db61b1a52ee593cc146d28b5006c9171a032b251;hb=0cba0d4df3fe120f08945703506f8405760325c9;hp=2d910a1ab0ee9bc5d794253046dca642f6ad29cb;hpb=b31d83c6c7eb274144acc7c40ea4bf8424b6b1e0;p=openocd.git diff --git a/src/server/server.c b/src/server/server.c index 2d910a1ab0..db61b1a52e 100644 --- a/src/server/server.c +++ b/src/server/server.c @@ -2,6 +2,12 @@ * Copyright (C) 2005 by Dominic Rath * * Dominic.Rath@gmx.de * * * + * Copyright (C) 2007,2008 Øyvind Harboe * + * oyvind.harboe@zylin.com * + * * + * Copyright (C) 2008 by Spencer Oliver * + * spen@spen-soft.co.uk * + * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * * the Free Software Foundation; either version 2 of the License, or * @@ -219,7 +225,7 @@ int remove_service(unsigned short port) return ERROR_OK; } -int remove_services() +int remove_services(void) { service_t *c = services; @@ -246,8 +252,8 @@ int remove_services() return ERROR_OK; } -extern void openocd_sleep_prelude(); -extern void openocd_sleep_postlude(); +extern void openocd_sleep_prelude(void); +extern void openocd_sleep_postlude(void); int server_loop(command_context_t *command_context) { @@ -303,13 +309,14 @@ int server_loop(command_context_t *command_context) } #ifndef _WIN32 -#ifndef BUILD_ECOSBOARD +#if BUILD_ECOSBOARD == 0 /* add STDIN to read_fds */ FD_SET(fileno(stdin), &read_fds); #endif #endif openocd_sleep_prelude(); + kept_alive(); // Only while we're sleeping we'll let others run retval = select(fd_max + 1, &read_fds, NULL, NULL, &tv); openocd_sleep_postlude(); @@ -342,6 +349,7 @@ int server_loop(command_context_t *command_context) } target_call_timer_callbacks(); + process_jim_events (); if (retval == 0) { @@ -396,7 +404,7 @@ int server_loop(command_context_t *command_context) } #ifndef _WIN32 -#ifndef BUILD_ECOSBOARD +#if BUILD_ECOSBOARD == 0 if (FD_ISSET(fileno(stdin), &read_fds)) { if (getc(stdin) == 'x') @@ -421,16 +429,16 @@ int server_loop(command_context_t *command_context) #ifdef _WIN32 BOOL WINAPI ControlHandler(DWORD dwCtrlType) { - shutdown_openocd = 1; - return TRUE; + shutdown_openocd = 1; + return TRUE; } void sig_handler(int sig) { - shutdown_openocd = 1; + shutdown_openocd = 1; } #endif -int server_init() +int server_init(void) { #ifdef _WIN32 WORD wVersionRequested; @@ -456,7 +464,7 @@ int server_init() return ERROR_OK; } -int server_quit() +int server_quit(void) { remove_services(); @@ -483,5 +491,3 @@ int handle_shutdown_command(struct command_context_s *cmd_ctx, char *cmd, char * return ERROR_COMMAND_CLOSE_CONNECTION; } - -