From kcwu@kcwu.homeip.net  Wed Jun 18 11:45:09 2003
Return-Path: <kcwu@kcwu.homeip.net>
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id 138EC37B401
	for <FreeBSD-gnats-submit@freebsd.org>; Wed, 18 Jun 2003 11:45:09 -0700 (PDT)
Received: from kcwu.homeip.net (u142-187.u61-70.giga.net.tw [61.70.142.187])
	by mx1.FreeBSD.org (Postfix) with ESMTP id D1BCD43F3F
	for <FreeBSD-gnats-submit@freebsd.org>; Wed, 18 Jun 2003 11:45:07 -0700 (PDT)
	(envelope-from kcwu@kcwu.homeip.net)
Received: from kcwu.homeip.net (fakeidkcwu@kcwu.homeip.net [127.0.0.1])
	by kcwu.homeip.net (8.12.9/8.12.9) with ESMTP id h5IIj6gd004059
	for <FreeBSD-gnats-submit@freebsd.org>; Thu, 19 Jun 2003 02:45:06 +0800 (CST)
	(envelope-from kcwu@kcwu.homeip.net)
Received: (from kcwu@localhost)
	by kcwu.homeip.net (8.12.9/8.12.9/Submit) id h5IIj5ZA004058;
	Thu, 19 Jun 2003 02:45:05 +0800 (CST)
Message-Id: <200306181845.h5IIj5ZA004058@kcwu.homeip.net>
Date: Thu, 19 Jun 2003 02:45:05 +0800 (CST)
From: Kuang-che Wu <kcwu@kcwu.homeip.net>
Reply-To: Kuang-che Wu <kcwu@kcwu.homeip.net>
To: FreeBSD-gnats-submit@freebsd.org
Cc:
Subject: wrong sample code in manpage of wcwidth(3)
X-Send-Pr-Version: 3.113
X-GNATS-Notify:

>Number:         53454
>Category:       docs
>Synopsis:       wrong sample code in manpage of wcwidth(3)
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    trhodes
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          doc-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Jun 18 11:50:15 PDT 2003
>Closed-Date:    Tue Aug 17 07:07:29 GMT 2004
>Last-Modified:  Tue Aug 17 07:07:29 GMT 2004
>Originator:     Kuang-che Wu
>Release:        FreeBSD 5.1-BETA i386
>Organization:
>Environment:
System: FreeBSD kcwu.homeip.net 5.1-BETA FreeBSD 5.1-BETA #2: Wed May 7 16:00:34 CST 2003 root@kcwu.homeip.net:/files/usr.obj/usr/src/sys/DESKTOP i386


	
>Description:
	The sample code produces 19 column positions wide 
	in first line, and 20 in rest lines.
	
	
>How-To-Repeat:
$ echo 123456789012345678901234567890123456789012345678901234567890 | ./w
1234567890123456789
01234567890123456789
01234567890123456789
0
	
>Fix:
           while ((ch = getwchar()) != WEOF) {
                   if ((w = wcwidth(ch)) > 0)
                           column += w;
-                  if (column >= 20) {
+                  if (column > 20) {
                           putwchar(L'\n');
-                          column = 0;
+                          column = w;
                   }
                   putwchar(ch);
                   if (ch == L'\n')
                           column = 0;
           }


	Maybe you would like to fix it some other way.
	


>Release-Note:
>Audit-Trail:

From: Marc Silver <marcs@draenor.org>
To: freebsd-gnats-submit@FreeBSD.org, kcwu@kcwu.homeip.net
Cc:  
Subject: Re: docs/53454: wrong sample code in manpage of wcwidth(3)
Date: Tue, 3 Feb 2004 13:34:28 +0000

 --Q0rSlbzrZN6k9QnT
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: inline
 
 Hi,
 
 I've tested the aforementioned patch, and it correctly outputs
 information now.  Perhaps someone could commit it?
 
 Diff attached.
 
 Cheers,
 Marc
 
 -- 
 Success is never final. Failure is never fatal. It is courage that
 counts.  
   -- Winston Churchill
 
 --Q0rSlbzrZN6k9QnT
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: attachment; filename="wcwidth.3-patch"
 
 --- wcwidth.3-orig	Tue Feb  3 15:28:07 2004
 +++ wcwidth.3	Tue Feb  3 15:28:31 2004
 @@ -67,9 +67,9 @@
  while ((ch = getwchar()) != WEOF) {
  	if ((w = wcwidth(ch)) > 0)
  		column += w;
 -	if (column >= 20) {
 +	if (column > 20) {
  		putwchar(L'\en');
 -		column = 0;
 +		column = w;
  	}
  	putwchar(ch);
  	if (ch == L'\en')
 
 --Q0rSlbzrZN6k9QnT--
Responsible-Changed-From-To: freebsd-doc->trhodes 
Responsible-Changed-By: trhodes 
Responsible-Changed-When: Thu Feb 5 09:45:43 PST 2004 
Responsible-Changed-Why:  
Take this PR. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=53454 
State-Changed-From-To: open->closed 
State-Changed-By: trhodes 
State-Changed-When: Tue Aug 17 07:07:03 GMT 2004 
State-Changed-Why:  
Surprise surprise, tjr fixed this already. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=53454 
>Unformatted:
