On Wed, Mar 18, 2020 at 07:31:35PM +0000, Rainer Weikusat wrote:
> Package: dialog
> Version: 1.3-20190211-1
> Severity: normal
> Tags: patch
> 
> As originally reported in #930775, the dialog program aborts with an exit 
> status of
> 255 after resizing a widget. This is due to the dlg_win_resize function 
> (util.c)
> configuring an input timeout of 0.02s which is then left in place, causing 
> the next
> regular character read (via dlg_getc in ui_getc.c) to fail with a timeout the 
> code
> isn't prepared to handle. The orignal command for triggering this was
> 
> dialog --msgbox Text 0 0
> 
> Supposedly, this issue is fixed in 1.3-20190808-1 but this isn't the case: 
> The relevant
> change in there ignores getc errors after a resize until some key event is 
> received.
> Because of this, the bug can no longer be triggered via msgbox as the only 
> key event
> processed by that cause the program to exit. It's still possible to trigger 
> the issue
> by using

I overlooked that (was probably pressing the spacebar, which should exit).

This looks ok:

>      }
> +    wtimeout(win, -1);
>      dlg_trace_msg("# caught %d KEY_RESIZE key%s\n",
>                 1 + caught,
>                 caught == 1 ? "" : "s");


-- 
Thomas E. Dickey <dic...@invisible-island.net>
https://invisible-island.net
ftp://ftp.invisible-island.net

Attachment: signature.asc
Description: PGP signature

Reply via email to