# HG changeset patch # User Stefan Monnier # Date 1190322848 0 # Node ID f44a6d77db0814bb8c788a26a54647ab30b87fd5 # Parent a87d11b8514c2c7fd9c4b0691e2cd5a6742dedff (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. diff -r a87d11b8514c -r f44a6d77db08 lib-src/ChangeLog --- a/lib-src/ChangeLog Thu Sep 20 16:32:26 2007 +0000 +++ b/lib-src/ChangeLog Thu Sep 20 21:14:08 2007 +0000 @@ -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 -r a87d11b8514c -r f44a6d77db08 lib-src/emacsclient.c --- a/lib-src/emacsclient.c Thu Sep 20 16:32:26 2007 +0000 +++ b/lib-src/emacsclient.c Thu Sep 20 21:14:08 2007 +0000 @@ -81,25 +81,6 @@ #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 @@ /* 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 @@ /* 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 @@ } /* - 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 @@ /* 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 @@ 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 @@ 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 @@ 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 @@ char *cwd, *str; char string[BUFSIZ+1]; - main_argc = argc; main_argv = argv; progname = argv[0];