|
From: | Thomas Dickey |
Subject: | Re: Invisible form fields w/ ncurses-5.7 on Fedora |
Date: | Fri, 12 Aug 2011 19:08:19 -0400 (EDT) |
On Fri, 12 Aug 2011, Grant Edwards wrote:
On 2011-08-12, Thomas Dickey <address@hidden> wrote:On Fri, 12 Aug 2011, Grant Edwards wrote:On 2011-08-12, Grant Edwards <address@hidden> wrote:I'm sure it's something I'm doing wrong in my application, but I can't figure out what it might be.Doh! After beating my head against the wall for a day and a half, it only takes 5 miutes after posting to stumble across the problem. There was a type in my code: w = newwin(rows,cols,y,x); assert(w); s = derwin(w,rows-2,cols-2,1,1); assert(s); set_form_win(f,w); set_form_win(f,s); That second set_form_win() call should have been set_form_sub(). I've no clue why my broken code worked for so long on so many systems and just recently failed only on Fedora systems.perhaps just different memory layout. I come across very old bugs periodically, and wonder how they escaped notice for so long. I don't recall anything special about set_form_win - looking at the change history, I see that I made a macro substitution in this code in 2009/11/07 - and somewhat earlier in 2009 was working to merge Juergen's changes, that affected the internals. So if your two "5.7" versions fell on each side of that timespan, then there might be some breakage for me to investigate.I assume that the version with two set_form_win() calls wouldn't be expected to work, so I don't think there's anything that really needs to be investigated. But, if you'd like I can track down the details for the two different "5.7" libraries.
That might help (at least me, so I could see why the behavior changed). Since the application code was incorrect, then it might have been a fix in ncurses (not certain...).
FWIW, on the Fedora system (where my old code didn't work), it behaved the same way with 5 different terminals (gnome, aterm, xterm, rxvt, Eterm): when the "form" was displayed the cursor was visible and just sat on the upper-left-hand border of the form dialog window until I hit the key that took down the form dialog. Changing the second set_form_win() call to set_form_sub() makes it work as expected everywhere. -- Grant Edwards grant.b.edwards Yow! I'm rated PG-34!! at gmail.com _______________________________________________ Bug-ncurses mailing list address@hidden https://lists.gnu.org/mailman/listinfo/bug-ncurses
-- Thomas E. Dickey http://invisible-island.net ftp://invisible-island.net
[Prev in Thread] | Current Thread | [Next in Thread] |