diff options
Diffstat (limited to '')
| -rw-r--r-- | ChangeLog | 11 | ||||
| -rwxr-xr-x | configure | 21 | ||||
| -rw-r--r-- | fm.h | 4 | ||||
| -rw-r--r-- | indep.c | 10 | ||||
| -rw-r--r-- | indep.h | 7 | 
5 files changed, 46 insertions, 7 deletions
| @@ -1,3 +1,14 @@ +2001-11-26  Fumitoshi UKAI  <ukai@debian.or.jp> + +	* [w3m-dev 02555] +	* configure: check strcasestr +	* fm.h (_GNU_SOURCE): requires for strcasestr() +	* indep.c (strcasestr): #ifdef HAVE_STRCASESTR +	* indep.c (strcasestr): check whether s2 is NULL +	* indep.h: add #include "config.h" +	* indep.h: #ifdef HAVE_STRCASESTR +	* indep.h: strcasestr() takes const char * +  2001-11-26  Yoshinobu Sakane <sakane@d4.bsd.nes.nec.co.jp>  	* [w3m-dev 02553] @@ -1,5 +1,5 @@  #!/bin/sh -# $Id: configure,v 1.19 2001/11/26 08:23:26 ukai Exp $ +# $Id: configure,v 1.20 2001/11/26 09:01:08 ukai Exp $  #	Configuration.  # @@ -1098,6 +1098,24 @@ else    def_have_strcasecmp="#undef HAVE_STRCASECMP"  fi +####### strcasestr +cat > _zmachdep.c << EOF +#include <string.h> +main() +{ +  int i; +  i = strcasestr("abc","def"); +} +EOF +if $cc $cflags -o _zmachdep _zmachdep.c > /dev/null 2>&1 +then +  echo "You have strcasestr()." +  def_have_strcasestr="#define HAVE_STRCASESTR" +else +  echo "You don't have strcasestr()." +  def_have_strcasestr="#undef HAVE_STRCASESTR" +fi +  ####### strchr  cat > _zmachdep.c << EOF  #include <string.h> @@ -1945,6 +1963,7 @@ $def_use_binstream  $def_term_if  $def_dir_if  $def_have_strcasecmp +$def_have_strcasestr  $def_have_strchr  $def_have_strerror  $def_have_syserrlist @@ -1,4 +1,4 @@ -/* $Id: fm.h,v 1.20 2001/11/24 02:01:26 ukai Exp $ */ +/* $Id: fm.h,v 1.21 2001/11/26 09:01:08 ukai Exp $ */  /*    * w3m: WWW wo Miru utility   *  @@ -10,6 +10,8 @@  #ifndef FM_H  #define FM_H +#define _GNU_SOURCE	/* strcasestr() */ +  #include <stdio.h>  #include <stdlib.h>  #include <string.h> @@ -1,4 +1,4 @@ -/* $Id: indep.c,v 1.9 2001/11/24 02:01:26 ukai Exp $ */ +/* $Id: indep.c,v 1.10 2001/11/26 09:01:08 ukai Exp $ */  #include "fm.h"  #include <stdio.h>  #include <pwd.h> @@ -169,21 +169,25 @@ expandPath(char *name)      return extpath->ptr;  } +#ifndef HAVE_STRCASESTR  /* string search using the simplest algorithm */  char * -strcasestr(char *s1, char *s2) +strcasestr(const char *s1, const char *s2)  {      int len1, len2; +    if (s2 == NULL) +	return (char *)s1;      len1 = strlen(s1);      len2 = strlen(s2);      while (*s1 && len1 >= len2) {  	if (strncasecmp(s1, s2, len2) == 0) -	    return s1; +	    return (char *)s1;  	s1++;  	len1--;      }      return 0;  } +#endif  static int  strcasematch(char *s1, char *s2) @@ -1,8 +1,9 @@ -/* $Id: indep.h,v 1.5 2001/11/21 16:29:46 ukai Exp $ */ +/* $Id: indep.h,v 1.6 2001/11/26 09:01:08 ukai Exp $ */  #ifndef INDEP_H  #define INDEP_H  #include "gc.h"  #include "Str.h" +#include "config.h"  #ifndef TRUE  #define TRUE 1 @@ -23,7 +24,9 @@ extern int strCmp(const void *s1, const void *s2);  extern char *currentdir(void);  extern char *cleanupName(char *name);  extern char *expandPath(char *name); -extern char *strcasestr(char *s1, char *s2); +#ifndef HAVE_STRCASESTR +extern char *strcasestr(const char *s1, const char *s2); +#endif  extern int strcasemstr(char *str, char *srch[], char **ret_ptr);  extern char *remove_space(char *str);  extern int non_null(char *s); | 
