From ada@not-enough.bandwidth.org  Fri Sep 26 20:53:51 1997
Received: from polya.blah.org (slmel12p24.ozemail.com.au [203.108.200.112])
          by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id UAA20852
          for <FreeBSD-gnats-submit@freebsd.org>; Fri, 26 Sep 1997 20:53:49 -0700 (PDT)
Received: (from ada@localhost)
          by polya.blah.org (8.8.6/8.8.5) id NAA00442;
          Sat, 27 Sep 1997 13:19:08 +1000 (EST)
Message-Id: <199709270319.NAA00442@polya.blah.org>
Date: Sat, 27 Sep 1997 13:19:08 +1000 (EST)
From: Ada T Lim <ada@not-enough.bandwidth.org>
Reply-To: ada@not-enough.bandwidth.org
To: FreeBSD-gnats-submit@freebsd.org
Subject: syscons mouse cut: paste inserts trailing spaces
X-Send-Pr-Version: 3.2

>Number:         4635
>Category:       i386
>Synopsis:       syscons mouse cut&paste inserts trailing spaces
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    sos
>State:          closed
>Quarter:
>Keywords:
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Fri Sep 26 21:00:00 PDT 1997
>Closed-Date:    Sun Dec 14 19:08:49 PST 1997
>Last-Modified:  Sun Dec 14 19:10:08 PST 1997
>Originator:     Ada T Lim
>Release:        FreeBSD 2.2-STABLE i386
>Organization:
>Environment:
>Description:
When copying a block using syscons cut and paste, the driver inserts spaces
to pad out each line to 80 lines.  This is incompatible with the behaviour
exhibited by screen and xterm, which insert newlines after the last printing
character of each line.

>How-To-Repeat:
>Fix:
*** syscons.c   Sat Sep 27 13:06:49 1997
--- syscons.c.dist      Sat Sep 27 12:40:05 1997
***************
*** 3935,3949 ****
      if (scp->status & MOUSE_VISIBLE) {
        struct tty *tp;
        u_char *ptr = cut_buffer;
-       u_char *p2 = ptr;

        tp = VIRTUAL_TTY(get_scr_num());
!       while (*ptr) {
!           for(p2 = ptr; *p2 == ' '; p2++);
!           if(*p2 == '\n')
!               ptr = p2;
            (*linesw[tp->t_line].l_rint)(scr_rmap[*ptr++], tp);
-         }
      }
  }

--- 3935,3944 ----
      if (scp->status & MOUSE_VISIBLE) {
        struct tty *tp;
        u_char *ptr = cut_buffer;

        tp = VIRTUAL_TTY(get_scr_num());
!       while (*ptr)
            (*linesw[tp->t_line].l_rint)(scr_rmap[*ptr++], tp);
      }
  }
 
>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-bugs->sos 
Responsible-Changed-By: jkh 
Responsible-Changed-When: Sat Sep 27 18:32:10 PDT 1997 
Responsible-Changed-Why:  
Assigned to Soren - he's Mr. Syscons. 
State-Changed-From-To: open->closed 
State-Changed-By: yokota 
State-Changed-When: Sun Dec 14 19:08:49 PST 1997 
State-Changed-Why:  
This has been corrected in syscons.c 1.242 in 3.0-CURRENT. 

>Unformatted:

