From cb06b8dcb5358609794bf580ffd67539419c83a5 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Thu, 20 Sep 2007 21:14:08 +0000 Subject: (DIRECTORY_SEP, IS_DIRECTORY_SEP, IS_DEVICE_SEP) (IS_ANY_SEP): Only define if !defined(HAVE_GET_CURRENT_DIR_NAME). (main_argc): Remove. (strprefix): Use strncmp. --- lib-src/ChangeLog | 7 ++++++ lib-src/emacsclient.c | 59 +++++++++++++++++++-------------------------------- 2 files changed, 29 insertions(+), 37 deletions(-) (limited to 'lib-src') diff --git a/lib-src/ChangeLog b/lib-src/ChangeLog index b76c85d4b1..9bb80585f4 100644 --- a/lib-src/ChangeLog +++ b/lib-src/ChangeLog @@ -1,3 +1,10 @@ +2007-09-20 Stefan Monnier + + * emacsclient.c (DIRECTORY_SEP, IS_DIRECTORY_SEP, IS_DEVICE_SEP) + (IS_ANY_SEP): Only define if !defined(HAVE_GET_CURRENT_DIR_NAME). + (main_argc): Remove. + (strprefix): Use strncmp. + 2007-09-20 Jason Rumney * emacsclient.c (main) [SIGSTOP]: Change conditional from WINDOWSNT. diff --git a/lib-src/emacsclient.c b/lib-src/emacsclient.c index 3b16b15f94..4788c010bf 100644 --- a/lib-src/emacsclient.c +++ b/lib-src/emacsclient.c @@ -81,25 +81,6 @@ Boston, MA 02110-1301, USA. */ #include #include -/* From lisp.h */ -#ifndef DIRECTORY_SEP -#define DIRECTORY_SEP '/' -#endif -#ifndef IS_DIRECTORY_SEP -#define IS_DIRECTORY_SEP(_c_) ((_c_) == DIRECTORY_SEP) -#endif -#ifndef IS_DEVICE_SEP -#ifndef DEVICE_SEP -#define IS_DEVICE_SEP(_c_) 0 -#else -#define IS_DEVICE_SEP(_c_) ((_c_) == DEVICE_SEP) -#endif -#endif -#ifndef IS_ANY_SEP -#define IS_ANY_SEP(_c_) (IS_DIRECTORY_SEP (_c_)) -#endif - - char *getenv (), *getwd (); char *(getcwd) (); @@ -132,9 +113,6 @@ char *(getcwd) (); /* Name used to invoke this program. */ char *progname; -/* The first argument to main. */ -int main_argc; - /* The second argument to main. */ char **main_argv; @@ -221,6 +199,25 @@ xstrdup (const char *s) /* From sysdep.c */ #if !defined (HAVE_GET_CURRENT_DIR_NAME) || defined (BROKEN_GET_CURRENT_DIR_NAME) +/* From lisp.h */ +#ifndef DIRECTORY_SEP +#define DIRECTORY_SEP '/' +#endif +#ifndef IS_DIRECTORY_SEP +#define IS_DIRECTORY_SEP(_c_) ((_c_) == DIRECTORY_SEP) +#endif +#ifndef IS_DEVICE_SEP +#ifndef DEVICE_SEP +#define IS_DEVICE_SEP(_c_) 0 +#else +#define IS_DEVICE_SEP(_c_) ((_c_) == DEVICE_SEP) +#endif +#endif +#ifndef IS_ANY_SEP +#define IS_ANY_SEP(_c_) (IS_DIRECTORY_SEP (_c_)) +#endif + + /* Return the current working directory. Returns NULL on errors. Any other returned value must be freed with free. This is used only when get_current_dir_name is not defined on the system. */ @@ -311,7 +308,7 @@ w32_window_app () } /* - execvp wrapper for Windows. Quotes arguments with embedded spaces. + execvp wrapper for Windows. Quotes arguments with embedded spaces. This is necessary due to the broken implementation of exec* routines in the Microsoft libraries: they concatenate the arguments together without @@ -516,6 +513,7 @@ Report bugs to bug-gnu-emacs@gnu.org.\n", progname); /* Try to run a different command, or --if no alternate editor is defined-- exit with an errorcode. + Uses argv, but gets it from the global variable main_argv. */ void fail (void) @@ -539,7 +537,6 @@ main (argc, argv) int argc; char **argv; { - main_argc = argc; main_argv = argv; progname = argv[0]; message (TRUE, "%s: Sorry, the Emacs server is supported only\n" @@ -893,17 +890,7 @@ set_tcp_socket () static int strprefix (char *prefix, char *string) { - int i; - if (! prefix) - return 1; - - if (!string) - return 0; - - for (i = 0; prefix[i]; i++) - if (!string[i] || string[i] != prefix[i]) - return 0; - return 1; + return !strncmp (prefix, string, strlen (prefix)); } @@ -1038,7 +1025,6 @@ set_local_socket () int sock_status = 0; int default_sock = !socket_name; int saved_errno = 0; - char *server_name = "server"; if (socket_name && !index (socket_name, '/') && !index (socket_name, '\\')) @@ -1268,7 +1254,6 @@ main (argc, argv) char *cwd, *str; char string[BUFSIZ+1]; - main_argc = argc; main_argv = argv; progname = argv[0]; -- cgit v1.2.3