<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
<blockquote cite="mid4102A9D0.40409@thegeorges.us" type="cite">
<blockquote type="cite">
<blockquote type="cite">I'm pretty sure I'm getting the same error
from tonight's CVS - startup mythfrontend, select any option on the
main screen and I get a segfault. The backtrace looks pretty much
identical to yours. I'm using the G.A.N.T theme in this instance...
<br>
</blockquote>
<br>
For now I've reverted to 1.81 on my local tree which works fine.
<br>
</blockquote>
<br>
I also have the same problem with the latest CVS (20 minutes ago).
Select anything from the main menu and immediately get a segfault. I
am using G.A.N.T.
<br>
<br>
Reverted themedmenu.cpp to version 1.81 and everything is working
again.
<br>
</blockquote>
I've taken a quick look at this, and the problem appears to be in the
following loop at themedmenu.cpp, line 1946.<br>
<br>
<blockquote><tt>for (unsigned int pos = 0; pos <
lastbutton->action.count();</tt><br>
<tt> pos++)</tt><br>
<tt>{</tt><br>
<tt> handleAction(lastbutton->action[pos]);</tt><br>
<tt>}</tt><br>
</blockquote>
<br>
During handleAction(), the internals of the QStringList 'action' get
messed up, so that you get a bad pointer deference in
'lastbutton->action.count()' causing the segfault (see the {sh = ...
} bits below):<br>
<br>
<blockquote><tt>Breakpoint 2, ThemedMenuPrivate::keyPressHandler
(this=0x8252688, e=0xbffff610)</tt><br>
<tt> at themedmenu.cpp:1946</tt><br>
<tt>1946 for (unsigned int pos = 0; pos <
lastbutton->action.count();</tt><br>
<tt>Current language: auto; currently c++</tt><br>
<tt>(gdb) p lastbutton->action</tt><br>
<tt>$1 = {<QValueList<QString>> = <b>{sh = 0x833c720}</b>,
<No data fields>}</tt><br>
<tt>(gdb) n</tt><br>
<tt>1949 handleAction(lastbutton->action[pos]);</tt><br>
<tt>(gdb) n</tt><br>
<tt>1946 for (unsigned int pos = 0; pos <
lastbutton->action.count();</tt><br>
<tt>(gdb) p lastbutton->action</tt><br>
<tt>$2 = {<QValueList<QString>> = <b>{sh = 0x1}</b>,
<No data fields>}</tt><br>
</blockquote>
I haven't managed to find the actual cause yet...<br>
<br>
Cheers,<br>
Nick<br>
</body>
</html>