LCDproc development and user support list

Text archives Help


[Lcdproc] lcdexec bug


Chronological Thread 
  • From: jonathan.n.mills at gmail.com (Jonathan Mills)
  • Subject: [Lcdproc] lcdexec bug
  • Date: Thu, 5 May 2016 09:16:25 +0100

As you may have noticed I have been having problems with lcdexec
returning "Critical error, abort".

I gave in and looked at the source code.

It would appear to be a bug in lcdexec/menu.c

menu.c has a function, menu_read, and near the end, if has a section
about "magic stuff" where it creates a menu entry for the Apply button
for the parameter entries. It creates a entry with me->type =
MT_AUTOMATIC | MT_ARG_ACTION - 0x80 + 0x47.

The next function, menu_sock_send, consumes the entries, and uses a
switch statement on me->type. However there is an entry for case
MT_AUTOMATIC and MT_ARG_ACTION, but not for MT_AUTOMATIC | MT_ARG_ACTION
with the result that it takes the default case, which returns the
critical error.

The fix I took was to add MT_AUTOMATIC | MT_ARG_ACTION to the case for
MT_AUTOMATIC (it may well be that the other two cases could be removed)

I have a menu that works on the curses driver now :-)

I can't get it to work on hh44780 yet though. Can't get the menu to
display.





  • [Lcdproc] lcdexec bug, Jonathan Mills, 05/05/2016

Archive powered by MHonArc 2.6.18.

Top of page