From owner-FreeBSD-tech-jp@jp.freebsd.org  Sat Oct 31 17:29:26 1998
Received: (from daemon@localhost)
	by jaz.jp.freebsd.org (8.9.1+3.1W/8.7.3) id RAA26357;
	Sat, 31 Oct 1998 17:29:26 +0900 (JST)
	(envelope-from owner-FreeBSD-tech-jp@jp.FreeBSD.org)
Received: from wall.yamaha-motor.co.jp (firewall-user@wall.yamaha-motor.co.jp [202.32.152.254])
	by jaz.jp.freebsd.org (8.9.1+3.1W/8.7.3) with ESMTP id RAA26349
	for <FreeBSD-tech-jp@jp.freebsd.org>; Sat, 31 Oct 1998 17:29:22 +0900 (JST)
	(envelope-from kimura@kaiseki.yamaha-motor.co.jp)
Received: by wall.yamaha-motor.co.jp; id RAA18650; Sat, 31 Oct 1998 17:29:08 +0900 (JST)
Received: from unknown(133.215.49.21) by wall.yamaha-motor.co.jp via smap (4.1)
	id xma018645; Sat, 31 Oct 98 17:28:44 +0900
Received: from pot026.yamaha-motor.co.jp ([133.215.44.7])
	by proxy.yamaha-motor.co.jp (8.8.8+2.7Wbeta7/3.6W-GW-971226) with ESMTP id RAA14837
	for <FreeBSD-tech-jp@jp.freebsd.org>; Sat, 31 Oct 1998 17:28:38 +0900 (JST)
Received: (from kimura@localhost)
	by pot026.yamaha-motor.co.jp (8.8.8/3.6W) id RAA12779;
	Sat, 31 Oct 1998 17:31:38 +0900 (JST)
Date: Sat, 31 Oct 1998 17:31:38 +0900 (JST)
From: Tetsuya Kimura <kimura@kaiseki.yamaha-motor.co.jp>
Message-Id: <199810310831.RAA12779@pot026.yamaha-motor.co.jp>
To: FreeBSD-tech-jp@jp.freebsd.org
References: <19981030191118G.keisuke@am.ics.keio.ac.jp>
In-reply-to: Keisuke Inoue's message of 30 Oct 1998 19:16:05 +0900
Mime-Version: 1.0 (generated by tm-edit 7.106)
Content-Type: text/plain; charset=ISO-2022-JP
Reply-To: FreeBSD-tech-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+980914
X-Sequence: FreeBSD-tech-jp 1882
Subject: [FreeBSD-tech-jp 1882] Re: ansi.c patch for ja-netscape
Errors-To: owner-FreeBSD-tech-jp@jp.freebsd.org
Sender: owner-FreeBSD-tech-jp@jp.freebsd.org
X-Originator: kimura@kaiseki.yamaha-motor.co.jp


$BLZB<!w%d%^%OH/F05!$G$9!#(B

$B0f>e$5$s(B>
  > ansi.c$B$N(Bpatch$B$N7o$G$9!#%F%/%K%+%k$JOC$G$O$J$$$N$G$9$,!"OCBj(B
  > $B$,$3$A$i$K0\$C$F$7$^$C$F$$$k$N$G$3$A$i$KF0:nJs9p$7$^$9!#(B

  > [FreeBSD-tech-jp 1823]$B$ND9IM$5$s$N%Q%C%A(B
  > [FreeBSD-tech-jp 1843]$B$NLZB<$5$s$N%Q%C%A(B
  > $B$N$I$A$i$G$bH/@8$9$k$N$G$9$,!"JQ99$7$?(Bansi.o$B$H(Blibxpg4$B$r(B
  > preload$B$7$?(Bcommunicator-4.06$B$G(BNTT-TE$B$N(BMN128-SOHO SL10$B$N@_Dj(B
  > $B2hLL(B(cgi)$B$r8+$K9T$/$H3N<B$K(Bcommunicator$B$,8G$^$j$^$9!#$=$N@_(B
  > $BDj2hLL$O(Bframe$B$O;H$C$F$$$^$9$,!"(B<INPUT>$B$N(BVALUE$B$d(B<TEXTAREA>$B$N(B
  > $B=i4|J8;zNs$KF|K\8l$O4^$^$l$F$$$^$;$s!#8=:_$I$N%?%0$,860x$G$"(B
  > $B$k$N$+D4$Y$F$$$^$9!#$3$N>I>u$O(B
  >   PATH_LOCALE="$MOZILLA_HOME/locale"
  > $B$r@_Dj$7$F5/F0$9$k(Bnetscape$B$G$OH/@8$7$^$;$s!#(B 

$B4{$KD9IM$5$s$+$i$NJs9p$K$"$j$^$7$?$,!"(Bwcstombs $B$H(B mbstowcs $B$,8F$P$l$k(B
$B=gHV$,LGCcLGCc$K$J$C$F$$$k$?$a$K8G$^$k$h$&$G$9!#(B
$B$G!"1Q8l$+F|K\8l$+$H$$$&$3$H$K$O4X78$J$/!"(BMultibyte $B$N(B locale
$B$r;H$&$H8G$^$k$s$@$H;W$$$^$9!#(B

$B;d$b$A$g$C$HD4$Y$F$_$?$N$G$9$,!"(B<INPUT VALUE="..."> $B$N=hM}$,(B
$B$*$+$7$$$h$&$G$9!#$3$N=hM}$r$9$k$?$a$K8F$P$l$F$$$k(B mbstowcs
$B$H(B wcstombs $B$N=gHV$,$*$+$7$$$G$9!#(BLANG $B$,(B multibyte $B$GL5$$(B
$B>l9g$O$3$l$i$N4X?t$,8F$P$l$J$$$N$GLdBj$J$$$_$?$$$G$9!#(B

$B$^$:!"(Bmbstowcs(NULL, s0, 0) $B$,8F$P$l$?8e!"2?8N$+(B
wcstombs(s1, s0, n) $B$G8F$P$l$F$$$k$N$G$9$,!"$3$l$O(B
mbstowcs(s1, s0, n) $B$G$J$1$l$P$J$i$J$$$O$:$@$H;W$&$N$G$9$,!"(B
$B$H$j$"$($:!"$3$3$G:n$i$l$?(Bs1 $B$O4{$KCf?H$,2u$l$F$$$^$9!#(B

$B$=$7$F$3$N8e!"(Bwcstombs(s2, s1, n) $B$G8F$P$l$F!"99$K2u$l$?(B s2 $B$r(B
$B@8@.$7$F$$$^$9!#(B

$B$3$&$7$F2?EY$+(B wcstombs $B$,8F$P$l$F$$$/$&$A$K%P%C%U%!$,%*!<%P!<(B
$B%U%m!<$7$F8G$^$k$s$8$c$J$$$+$H$$$&5$$,$7$F$$$^$9!#(B

$B@0M}$9$k$H(B
$B8=>u(B: mbstowcs(NULL, s0, 0) -> wcstombs(s1, s0, n) -> wcstombs(s2, s1, n)
$B@52r(B: mbstowcs(NULL, s0, 0) -> mbstowcs(s1, s0, n) -> wcstombs(s2, s1, n)

$B$^$?!"(Bmbstowcs(NULL, s0, 0) $B$G<hF@$5$l$?J8;z?t$OFC$KM-8z$K$O(B
$B;H$o$l$F$$$J$$$_$?$$$J$N$G!"(Bansi.c $B$N%Q%C%A$rEv$F$F$b$"$^$j(B
$B0BDj@-$O2~A1$5$l$J$$$s$8$c$J$$$+$H;W$C$F$$$^$9!#(B

$B0l1~$3$NJU$j$N$3$H$O(B
http://help.netscape.com/forms/bug-client.html
$B$G%l%]!<%H$7$F$_$?$N$G$9$,!"$A$c$s$HDL$8$F$$$k$+$I$&$+(B...

$B$H$j$"$($:!"(Bcommunicator $B$r0BDj$5$;$k$?$a$K!">e$N$h$&$J%Q%?!<%s(B
$B$rHr$1$k$h$&$J%Q%C%A$rEv$F$F;H$C$F$$$^$9!#(B

$B$3$s$J$b$N$r8x3+$7$F$7$^$C$F$$$$$N$+$H$$$&5$$b$7$^$9$,!"(B
netscape $B$,BP1~$7$F$/$l$k$^$G$N$D$J$.$H$$$&$3$H$G!#(B
/usr/src/lib/libc/locale/ansi.c $B$X$N%Q%C%A$G$9!#(B

--- ansi.c.dist	Sat Oct 31 13:04:21 1998
+++ ansi.c	Sat Oct 31 13:34:17 1998
@@ -43,6 +43,9 @@
 #include <stddef.h>
 #include <rune.h>
 
+char *wcsmbsp = NULL;
+const char *mbsmbsp = NULL;
+
 int
 mblen(s, n)
 	const char *s;
@@ -105,6 +108,7 @@
 	char const *e;
 	int cnt = 0;
 
+	mbsmbsp = s;
 	if (!pwcs || !s)
 		return (-1);
 
@@ -128,6 +132,10 @@
 {
 	char *e;
 	int cnt = 0;
+
+	if((int)mbsmbsp == (int)pwcs || (int)wcsmbsp == (int)pwcs)
+		return(0);
+	wcsmbsp = s;
 
 	if (!pwcs || !s)
 		return (-1);

