diff options
author | EST 1998 Nathan Bryant <bryant@cs.usm.maine.edu> | 1998-01-29 21:51:06 +0000 |
---|---|---|
committer | Nathan Bryant <nbryant@src.gnome.org> | 1998-01-29 21:51:06 +0000 |
commit | afc41fa966b013332fd7b1844607e4f78f192389 (patch) | |
tree | 19b3bfbe493cb81a4b327dd06b65cad04e517ab6 | |
parent | b2157c96be954fef00966fb37d30b665a83a2586 (diff) | |
download | gnome-common-afc41fa966b013332fd7b1844607e4f78f192389.tar.gz |
check for strtok_r remove fr from ALL_LINGUAS add libsupport, INTLLIBS,
Thu Jan 29 16:49:12 EST 1998 Nathan Bryant <bryant@cs.usm.maine.edu>
* configure.in: check for strtok_r
* programs/freecell/configure.in: remove fr from ALL_LINGUAS
* programs/girc/Makefile.am: add libsupport, INTLLIBS, DL_LIB
* programs/gmailman/Makefile.am: add DL_LIB
* programs/gsm/Makefile.am: add DL_LIB
* support/strtok_r.c: new file
svn path=/trunk/; revision=59
-rw-r--r-- | support/.cvsignore | 2 | ||||
-rw-r--r-- | support/strtok_r.c | 62 |
2 files changed, 64 insertions, 0 deletions
diff --git a/support/.cvsignore b/support/.cvsignore index 70845e0..e440faf 100644 --- a/support/.cvsignore +++ b/support/.cvsignore @@ -1 +1,3 @@ Makefile.in +Makefile +.deps diff --git a/support/strtok_r.c b/support/strtok_r.c new file mode 100644 index 0000000..fb68ad8 --- /dev/null +++ b/support/strtok_r.c @@ -0,0 +1,62 @@ +/* Reentrant string tokenizer. Generic version. +Copyright (C) 1991, 1996 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +The GNU C Library is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +The GNU C Library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with the GNU C Library; see the file COPYING.LIB. If +not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ + +#include <string.h> + + +/* Parse S into tokens separated by characters in DELIM. + If S is NULL, the saved pointer in SAVE_PTR is used as + the next starting point. For example: + char s[] = "-abc-=-def"; + char *sp; + x = strtok_r(s, "-", &sp); // x = "abc", sp = "=-def" + x = strtok_r(NULL, "-=", &sp); // x = "def", sp = NULL + x = strtok_r(NULL, "=", &sp); // x = NULL + // s = "abc\0-def\0" +*/ +char * +strtok_r (s, delim, save_ptr) + char *s; + const char *delim; + char **save_ptr; +{ + char *token; + + if (s == NULL) + s = *save_ptr; + + /* Scan leading delimiters. */ + s += strspn (s, delim); + if (*s == '\0') + return NULL; + + /* Find the end of the token. */ + token = s; + s = strpbrk (token, delim); + if (s == NULL) + /* This token finishes the string. */ + *save_ptr = strchr (token, '\0'); + else + { + /* Terminate the token and make *SAVE_PTR point past it. */ + *s = '\0'; + *save_ptr = s + 1; + } + return token; +} |