NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/52671



The following reply was made to PR bin/52671; it has been noted by GNATS.

From: Ralph Geier <gralph%post-ist-da.de@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: kern/52671
Date: Sun, 12 Nov 2017 16:11:52 +0100

 Hi,
 
 my solution was not matured. It has problems with (multibyte)
 characters without upper-/lowercase counterparts.
 
 E.g. search for the the german 'sharp s' (=DF) with 'ignorecase' set.
 The following patch should fix this.
 
 regards
 Ralph
 
 
 Index: regcomp.c
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
 RCS file: /cvsroot/src/external/bsd/nvi/dist/regex/regcomp.c,v
 retrieving revision 1.6
 diff -u -r1.6 regcomp.c
 --- regcomp.c	29 Oct 2017 15:29:34 -0000	1.6
 +++ regcomp.c	12 Nov 2017 14:45:44 -0000
 @@ -98,7 +98,7 @@
  static void p_b_eclass __P((struct parse *p, cset *cs));
  static char p_b_symbol __P((struct parse *p));
  static char p_b_coll_elem __P((struct parse *p, int endc));
 -static char othercase __P((int ch));
 +static RCHAR_T othercase __P((int ch));
  static void bothcases __P((struct parse *p, int ch));
  static void ordinary __P((struct parse *p, int ch));
  static void nonnewline __P((struct parse *p));
 @@ -946,7 +946,7 @@
   - othercase - return the case counterpart of an alphabetic
   =3D=3D static char othercase(int ch);
   */
 -static char			/* if no counterpart, return ch */
 +static RCHAR_T			/* if no counterpart, return ch */
  othercase(int ch)
  {
  	assert(ISALPHA2(ch));
 


Home | Main Index | Thread Index | Old Index