From owner-freebsd-ports-bugs@FreeBSD.ORG Mon Feb 6 10:20:08 2012 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DCFD51065675 for ; Mon, 6 Feb 2012 10:20:07 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id B3DC28FC12 for ; Mon, 6 Feb 2012 10:20:07 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q16AK7v7060177 for ; Mon, 6 Feb 2012 10:20:07 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q16AK7MZ060176; Mon, 6 Feb 2012 10:20:07 GMT (envelope-from gnats) Resent-Date: Mon, 6 Feb 2012 10:20:07 GMT Resent-Message-Id: <201202061020.q16AK7MZ060176@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Sergey Kronshtadtov Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 34C28106564A for ; Mon, 6 Feb 2012 10:12:10 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from red.freebsd.org (red.freebsd.org [IPv6:2001:4f8:fff6::22]) by mx1.freebsd.org (Postfix) with ESMTP id 098E98FC19 for ; Mon, 6 Feb 2012 10:12:10 +0000 (UTC) Received: from red.freebsd.org (localhost [127.0.0.1]) by red.freebsd.org (8.14.4/8.14.4) with ESMTP id q16AC9lZ022583 for ; Mon, 6 Feb 2012 10:12:09 GMT (envelope-from nobody@red.freebsd.org) Received: (from nobody@localhost) by red.freebsd.org (8.14.4/8.14.4/Submit) id q16AC9cT022582; Mon, 6 Feb 2012 10:12:09 GMT (envelope-from nobody) Message-Id: <201202061012.q16AC9cT022582@red.freebsd.org> Date: Mon, 6 Feb 2012 10:12:09 GMT From: Sergey Kronshtadtov To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Cc: Subject: ports/164818: sysutils/tty-clock may be fixed on 9.0 X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Feb 2012 10:20:08 -0000 >Number: 164818 >Category: ports >Synopsis: sysutils/tty-clock may be fixed on 9.0 >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: update >Submitter-Id: current-users >Arrival-Date: Mon Feb 06 10:20:07 UTC 2012 >Closed-Date: >Last-Modified: >Originator: Sergey Kronshtadtov >Release: 9.0-STABLE >Organization: - >Environment: FreeBSD clock01.008.sbm5.net 9.0-STABLE FreeBSD 9.0-STABLE #0: Mon Jan 30 20:02:22 MSK 2012 svk@fs1-1.008.sbm5.net:/usr/obj/i386.i386/.01/build/9-STABLE-20120127/usr/src/sys/GENERIC i386 >Description: I have no coredumps on 9.0-STABLE (27.01.2012) but "minutes" section becomes defaced after a while. It seems for me like a bug in console subsystem. It happend only on consoles, not ssh etc. I suppose the problem is in some kind of data corruption while window refreshes frequently. Thereby color pairs applied incorrectly. Though i can't figure out the clear way to make things goes wrong. Only "something wrong with wrefresh". The patch is just rearrangement of pair of code blocks to run wrefresh-es in slighly different sequence. Now it works flawlessly for me. >How-To-Repeat: - >Fix: clock01# diff ttyclock.c ttyclock.c.save.00 177c177 < draw_number(int n, int y, int x) --- > draw_number(int n, int x, int y) 179c179 < int i, sx = x; --- > int i, sy = y; 181c181 < for(i = 0; i < 30; ++i, ++sx) --- > for(i = 0; i < 30; ++i, ++sy) 183c183 < if(sx == x + 6) --- > if(sy == y + 6) 185,186c185,186 < sx = x; < ++y; --- > sy = y; > ++x; 189c189 < mvwaddch(ttyclock->framewin, y, sx, ' '); --- > mvwaddch(ttyclock->framewin, x, sy, ' '); 190a191 > wrefresh(ttyclock->framewin); 210a212,216 > /* Draw the date */ > wbkgdset(ttyclock->datewin, (COLOR_PAIR(2))); > mvwprintw(ttyclock->datewin, (DATEWINH / 2), 1, ttyclock->date.datestr); > wrefresh(ttyclock->datewin); > 224,231d229 < wrefresh(ttyclock->framewin); < < /* Draw the date */ < wbkgdset(ttyclock->datewin, (COLOR_PAIR(2))); < mvwprintw(ttyclock->datewin, (DATEWINH / 2), 1, ttyclock->date.datestr); < < wrefresh(ttyclock->datewin); < clock01# >Release-Note: >Audit-Trail: >Unformatted: