[mythtv] RE: Segfault in mythfrontend when returning to playlist from watc hing recording...

jasonmiller jasonmiller at micron.com
Thu Apr 3 19:48:14 EST 2003


  Well, since the backtrace made no sense to me, I dug in a little more.
I'm able to prevent the segfault by adding:

diff -r1.104 playbackbox.cpp
850c850
<
---
>       if (h < 0) return;

Of course, the screen doesn't update until I hit up or down arrow but it
beats the heck out of a seg fault!

When it fails, h is negative which is a bad thing as far as I can tell.
Knowing less than nothing about the code, I have no idea but seems odd
that I'm the only one seeing it, or at least talking about it :)


-----Original Message-----
From: jasonmiller
To: 'mythtv-dev at snowman.net'
Sent: 04/03/2003 2:14 PM
Subject: Segfault in mythfrontend when returning to playlist from watching recording...

With the latest CVS I'm getting a segfault in mythfrontend when I exit
watching a recording and come back to the playlist.  The playlist
background shows up (but no playlist) and poof.  I'm running QT v3.1.0.
Any suggestions?  Backtrace follows...

(gdb) run
Starting program: /usr/local/bin/mythfrontend
[New Thread 16384 (LWP 2189)]
connecting to backend server: 192.168.1.14:6543
[New Thread 32769 (LWP 2208)]
[New Thread 16386 (LWP 2209)]
[New Thread 32771 (LWP 2210)]
[New Thread 49156 (LWP 2211)]
[New Thread 65541 (LWP 2212)]
Changing from None to WatchingPreRecorded
[New Thread 81926 (LWP 2213)]
Over/underscanning. V: 0.000000, H: 0.050000, XOff: 0, YOff: 100
Using XV port 69
[New Thread 98311 (LWP 2217)]
[New Thread 114696 (LWP 2218)]
Delaying to next trigger: 28843974
Delaying to next trigger: 25624069
Delaying to next trigger: 26426936
Delaying to next trigger: 25020302
Delaying to next trigger: 23133453
Delaying to next trigger: 19266040
Delaying to next trigger: 11952297
Delaying to next trigger: 5268344
Delaying to next trigger: 1045240
Changing from WatchingPreRecorded to None
Changing from None to None

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 2189)]
0x40665751 in operator==(QString const&, char const*) () from
/usr/qt/3/lib/libqt-mt.so.3
(gdb) bt
#0  0x40665751 in operator==(QString const&, char const*) () from
/usr/qt/3/lib/libqt-mt.so.3
#1  0x406657f6 in operator!=(QString const&, char const*) () from
/usr/qt/3/lib/libqt-mt.so.3
#2  0x0807fd7c in PlaybackBox::updateShowTitles(QPainter*)
(this=0xbfffe9c0, p=0xbfffd7a0)
    at playbackbox.cpp:851
#3  0x0807cbb8 in PlaybackBox::paintEvent(QPaintEvent*)
(this=0xbfffe9c0, e=0xbfffdb20)
    at playbackbox.cpp:496
#4  0x40417130 in QWidget::event(QEvent*) () from
/usr/qt/3/lib/libqt-mt.so.3
#5  0x403853c6 in QApplication::internalNotify(QObject*, QEvent*) ()
from /usr/qt/3/lib/libqt-mt.so.3
#6  0x40384986 in QApplication::notify(QObject*, QEvent*) () from
/usr/qt/3/lib/libqt-mt.so.3
#7  0x4035b6f2 in QWidget::repaint(QRegion const&, bool) () from
/usr/qt/3/lib/libqt-mt.so.3
#8  0x403861ab in QApplication::sendPostedEvents(QObject*, int) () from
/usr/qt/3/lib/libqt-mt.so.3
#9  0x40385ff8 in QApplication::sendPostedEvents() () from
/usr/qt/3/lib/libqt-mt.so.3
#10 0x4033e835 in QEventLoop::processEvents(unsigned) () from
/usr/qt/3/lib/libqt-mt.so.3
#11 0x403990c1 in QEventLoop::processEvents(unsigned, int) () from
/usr/qt/3/lib/libqt-mt.so.3
#12 0x40385540 in QApplication::processEvents(int) () from
/usr/qt/3/lib/libqt-mt.so.3
#13 0x40385507 in QApplication::processEvents() () from
/usr/qt/3/lib/libqt-mt.so.3
#14 0x400afd3f in ReadStringList(QSocket*, QStringList&)
(socket=0x83908e0, list=@0xbfffdef0)
    at util.cpp:100
#15 0x40080ee7 in MythContext::SendReceiveStringList(QStringList&)
(this=0x8386838, strlist=@0xbfffdef0)
    at mythcontext.cpp:577
#16 0x0812332b in RemoteGetRecordedList(bool) (deltype=false) at
remoteutil.cpp:18
#17 0x08083440 in PlaybackBox::FillList() (this=0xbfffe9c0) at
playbackbox.cpp:1381
#18 0x08084b3c in PlaybackBox::play(ProgramInfo*) (this=0xbfffe9c0,
rec=0x840ed48) at playbackbox.cpp:1632
#19 0x08084785 in PlaybackBox::selected() (this=0xbfffe9c0) at
playbackbox.cpp:1575
#20 0x080be63a in PlaybackBox::qt_invoke(int, QUObject*)
(this=0xbfffe9c0, _id=59, _o=0xbfffe170)
    at moc_playbackbox.cpp:136
#21 0x403e2f99 in QObject::activate_signal(QConnectionList*, QUObject*)
() from /usr/qt/3/lib/libqt-mt.so.3
#22 0x406c2652 in QSignal::signal(QVariant const&) () from
/usr/qt/3/lib/libqt-mt.so.3
#23 0x403fd0d8 in QSignal::activate() () from
/usr/qt/3/lib/libqt-mt.so.3
#24 0x4038043e in QAccelPrivate::activate(QAccelItem*) () from
/usr/qt/3/lib/libqt-mt.so.3
#25 0x4037ee5e in QAccelManager::dispatchAccelEvent(QWidget*,
QKeyEvent*) ()
   from /usr/qt/3/lib/libqt-mt.so.3
#26 0x4037e82e in qt_dispatchAccelEvent(QWidget*, QKeyEvent*) () from
/usr/qt/3/lib/libqt-mt.so.3
#27 0x40384907 in QApplication::notify(QObject*, QEvent*) () from
/usr/qt/3/lib/libqt-mt.so.3
#28 0x4037ecb6 in QAccelManager::tryAccelEvent(QWidget*, QKeyEvent*) ()
from /usr/qt/3/lib/libqt-mt.so.3
#29 0x4037e79e in qt_tryAccelEvent(QWidget*, QKeyEvent*) () from
/usr/qt/3/lib/libqt-mt.so.3
#30 0x4032dbab in QETWidget::translateKeyEvent(_XEvent const*, bool) ()
from /usr/qt/3/lib/libqt-mt.so.3
#31 0x403294a8 in QApplication::x11ProcessEvent(_XEvent*) () from
/usr/qt/3/lib/libqt-mt.so.3
#32 0x4033e8ba in QEventLoop::processEvents(unsigned) () from
/usr/qt/3/lib/libqt-mt.so.3
#33 0x40399026 in QEventLoop::enterLoop() () from
/usr/qt/3/lib/libqt-mt.so.3
#34 0x40385671 in QApplication::enter_loop() () from
/usr/qt/3/lib/libqt-mt.so.3
#35 0x40546bf1 in QDialog::exec() () from /usr/qt/3/lib/libqt-mt.so.3
#36 0x0806998f in startPlayback() () at main.cpp:60
#37 0x08069d4c in TVMenuCallback(void*, QString&) (data=0x8386838,
selection=@0x839b830) at main.cpp:131
#38 0x400a9533 in ThemedMenu::handleAction(QString&) (this=0x839b6f8,
action=@0x83b027c)
    at themedmenu.cpp:1463
#39 0x400a8cc3 in ThemedMenu::keyPressEvent(QKeyEvent*) (this=0x839b6f8,
e=0xbffff1a0)
    at themedmenu.cpp:1387
#40 0x4041705c in QWidget::event(QEvent*) () from
/usr/qt/3/lib/libqt-mt.so.3
#41 0x403853c6 in QApplication::internalNotify(QObject*, QEvent*) ()
from /usr/qt/3/lib/libqt-mt.so.3
#42 0x40384d6c in QApplication::notify(QObject*, QEvent*) () from
/usr/qt/3/lib/libqt-mt.so.3
#43 0x4032d65e in QETWidget::translateKeyEvent(_XEvent const*, bool) ()
from /usr/qt/3/lib/libqt-mt.so.3
#44 0x403294a8 in QApplication::x11ProcessEvent(_XEvent*) () from
/usr/qt/3/lib/libqt-mt.so.3
#45 0x4033e8ba in QEventLoop::processEvents(unsigned) () from
/usr/qt/3/lib/libqt-mt.so.3
#46 0x40399026 in QEventLoop::enterLoop() () from
/usr/qt/3/lib/libqt-mt.so.3
#47 0x40385671 in QApplication::enter_loop() () from
/usr/qt/3/lib/libqt-mt.so.3
#48 0x40546bf1 in QDialog::exec() () from /usr/qt/3/lib/libqt-mt.so.3
#49 0x0806ab1d in RunMenu(QString) (themedir=
      {static null = {static null = <same as static member of an already
seen type>, d = 0x835fcc8, static shared_null = 0x835fcc8}, d =
0x83aaaa8, static shared_null = 0x835fcc8}) at main.cpp:222
#50 0x0806bf90 in main (argc=1, argv=0xbffff844) at main.cpp:347
#51 0x40a3ddb4 in __libc_start_main () from /lib/libc.so.6



More information about the mythtv-dev mailing list