[mythtv] [BUG] mythfrontend crash on Watch recordings screen. (gdb
dump attached)
Patrick Mowry
pmowry at cableaz.com
Thu Jun 10 05:56:03 EDT 2004
Hello,
With latest CVS on RH9 (2.4 kernel) and a PVR-350, If I enter the Watch
Recordings Screen and leave any program selected long enough for the preview
to play for a few seconds, the frontend crashes. If I migrate quickly from
one program to the next everything is fine and I can watch the ones I want.
I tried changing the frontend to use thumbnails instead, but it did not take
affect. Things were working fine with CVS from last weekend. Please let me
know if you need further information or it looks like a problem with my
system.
Thanks,
-Patrick
-------------- next part --------------
# gdb /usr/local/bin/mythfrontend
GNU gdb Red Hat Linux (5.3post-0.20021129.18rh)
Copyright 2003 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...
(gdb) run
Starting program: /usr/local/bin/mythfrontend
[New Thread 1095030528 (LWP 6578)]
2004-06-10 02:36:44 mythfrontend version: 0.15.20040528-1 www.mythtv.org
2004-06-10 02:36:44 Enabled verbose msgs : important general
[New Thread 1116957488 (LWP 6587)]
2004-06-10 02:36:49 Registering Internal as a media playback plugin.
2004-06-10 02:36:50 Registering MythDVD DVD Media Handler as a media handler
2004-06-10 02:36:50 Registering MythDVD VCD Media Handler as a media handler
2004-06-10 02:36:57 Registering MythMusic Media Handler as a media handler
2004-06-10 02:37:54 All Programs
2004-06-10 02:37:56 Connecting to backend server: 192.168.21.251:6543 (try 1 of 5)
2004-06-10 02:37:56 Using protocol version 9
2004-06-10 02:37:56 Using protocol version 9
[New Thread 1130195760 (LWP 6641)]
Input #0, mpeg, from '/mnt/Store//1069_20040609220000_20040609230000.nuv':
Stream #0.0: Video: mpeg2video, 720x480, 29.97 fps
Stream #0.1: Audio: mp2, 48000 Hz, stereo, 384 kb/s
[New Thread 1157495600 (LWP 6642)]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1130195760 (LWP 6641)]
0x401d1df7 in MythSqlDatabase::lock() (this=0x0) at mythdbcon.h:62
62 mythdbcon.h: No such file or directory.
in mythdbcon.h
(gdb) thread apply all bt full
Thread 4 (Thread 1157495600 (LWP 6642)):
#0 0xffffe002 in ?? ()
No symbol table info available.
#1 0x401c5a0c in NuppelVideoPlayer::OldAVSync() (this=0x849a2e8)
at NuppelVideoPlayer.cpp:1616
buffer = (VideoFrame *) 0x8556eb0
#2 0x401c6586 in NuppelVideoPlayer::OutputVideoLoop() (this=0x849a2e8)
at NuppelVideoPlayer.cpp:1784
frame = (VideoFrame *) 0x8556eb0
#3 0x401c685e in NuppelVideoPlayer::kickoffOutputVideoLoop(void*) (
player=0x849a2e8) at NuppelVideoPlayer.cpp:1854
nvp = (NuppelVideoPlayer *) 0x849a2e8
#4 0x4119c484 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
Thread 3 (Thread 1130195760 (LWP 6641)):
#0 0x401d1df7 in MythSqlDatabase::lock() (this=0x0) at mythdbcon.h:62
No locals.
#1 0x402c5223 in AvFormatDecoder::PosMapFromDb() (this=0x82f48d8)
at avformatdecoder.cpp:1508
posMap = {sh = 0x81e4800}
#2 0x402c5895 in AvFormatDecoder::SyncPositionMap() (this=0x82f48d8)
at avformatdecoder.cpp:1651
old_posmap_size = 2
ret_val = 67
#3 0x402c33c3 in AvFormatDecoder::HandleGopStart(AVPacket*) (this=0x82f48d8,
pkt=0x82f8e20) at avformatdecoder.cpp:818
tempKeyFrameDist = 15
#4 0x402c3b85 in AvFormatDecoder::MpegPreProcessPkt(AVStream*, AVPacket*) (
this=0x82f48d8, stream=0x849e9c0, pkt=0x82f8e20) at avformatdecoder.cpp:969
context = (AVCodecContext *) 0x849e9c8
bufptr = (unsigned char *) 0x8454742 ""
state = 440
v = 184
prvcount = 156
#5 0x402c4058 in AvFormatDecoder::GetFrame(int) (this=0x82f48d8, onlyvideo=1)
at avformatdecoder.cpp:1120
context = (AVCodecContext *) 0x849e9c8
curstream = (AVStream *) 0x849e9c0
pkt = (AVPacket *) 0x82f8e20
len = 45428
ret = 0
ptr = (unsigned char *) 0x84546a8 ""
samples = (short int *) 0x84642b8
data_size = 0
pts = 1401
firstloop = true
allowedquit = false
storevideoframes = false
#6 0x401c21e9 in NuppelVideoPlayer::GetFrame(int, bool) (this=0x849a2e8,
onlyvideo=1, unsafe=false) at NuppelVideoPlayer.cpp:700
No locals.
#7 0x401c78b6 in NuppelVideoPlayer::StartPlaying() (this=0x849a2e8)
at NuppelVideoPlayer.cpp:2122
output_video = 1157495600
pausecheck = 0
#8 0x080866e7 in SpawnDecoder (param=0x849a2e8) at playbackbox.cpp:1295
nvp = (NuppelVideoPlayer *) 0x849a2e8
#9 0x4119c484 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
Thread 2 (Thread 1116957488 (LWP 6587)):
#0 0xffffe002 in ?? ()
No symbol table info available.
#1 0x408c3e4a in LircClient::Process() (this=0x82b0bf0) at lirc.cpp:67
code = 0x0
ir = 0x0
ret = 1073791680
#2 0x4088e050 in SpawnLirc (param=0x82bf808) at mythdialogs.cpp:43
main_window = (MythMainWindow *) 0x82bf808
config_file = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x82b38c8,
static shared_null = 0x81df580}
program = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x82b0378,
static shared_null = 0x81df580}
cl = (class LircClient *) 0x82b0bf0
#3 0x4119c484 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
Thread 1 (Thread 1095030528 (LWP 6578)):
#0 0xffffe002 in ?? ()
No symbol table info available.
#1 0x40d3ccf6 in QEventLoop::enterLoop() ()
from /usr/lib/qt-3.1/lib/libqt-mt.so.3
No symbol table info available.
#2 0x40d291b1 in QApplication::enter_loop() ()
from /usr/lib/qt-3.1/lib/libqt-mt.so.3
No symbol table info available.
#3 0x40896449 in MythDialog::exec() (this=0xbfffd5b0) at mythdialogs.cpp:788
res = 20457216
#4 0x0806b1d0 in startPlayback() () at main.cpp:172
pbb = {<MythDialog> = {<> = {<No data fields>},
static metaObj = 0x8319ed8, wmult = 0.779999971, hmult = 0.666666687,
screenwidth = 624, screenheight = 400, xbase = 16, ybase = 16,
m_parent = 0x82bf808, rescode = 0, in_loop = true, defaultBigFont = {
d = 0x82d2f50}, defaultMediumFont = {d = 0x82f3938}, defaultSmallFont = {
d = 0x82db930}}, static metaObj = 0x8319588, backup = {<Qt> = {
static color0 = @0x41192e20, static color1 = @0x41192e28,
static black = @0x41192e30, static white = @0x41192e38,
static darkGray = @0x41192e40, static gray = @0x41192e48,
static lightGray = @0x41192e50, static red = @0x41192e58,
static green = @0x41192e60, static blue = @0x41192e68,
static cyan = @0x41192e70, static magenta = @0x41192e78,
static yellow = @0x41192e80, static darkRed = @0x41192e88,
static darkGreen = @0x41192e90, static darkBlue = @0x41192e98,
static darkCyan = @0x41192ea0, static darkMagenta = @0x41192ea8,
static darkYellow = @0x41192eb0, static arrowCursor = @0x41191800,
static upArrowCursor = @0x41191804, static crossCursor = @0x41191808,
static waitCursor = @0x4119180c, static ibeamCursor = @0x41191810,
static sizeVerCursor = @0x41191814, static sizeHorCursor = @0x41191818,
static sizeBDiagCursor = @0x4119181c,
static sizeFDiagCursor = @0x41191820, static sizeAllCursor = @0x41191824,
static blankCursor = @0x41191828, static splitVCursor = @0x41191830,
static splitHCursor = @0x4119182c,
static pointingHandCursor = @0x41191834,
static forbiddenCursor = @0x41191838,
static whatsThisCursor = @0x4119183c}, flags = 4, d = 0x0, pdev = 0x0,
bg_col = {static color_init = true, static globals_init = true,
static colormodel = d32, d = {argb = 4294967295, d8 = {argb = 4294967295,
pix = 84 'T', invalid = 82 'R', dirty = 73 'I', direct = 68 'D'},
d32 = {argb = 4294967295, pix = 1145655892}}}, bg_mode = 0 '\0',
rop = 0 '\0', pu = 0 '\0', bro = {xp = 0, yp = 0}, cfont = {d = 0x829a158},
pfont = 0x0, cpen = {<Qt> = {static color0 = @0x41192e20,
static color1 = @0x41192e28, static black = @0x41192e30,
static white = @0x41192e38, static darkGray = @0x41192e40,
static gray = @0x41192e48, static lightGray = @0x41192e50,
static red = @0x41192e58, static green = @0x41192e60,
static blue = @0x41192e68, static cyan = @0x41192e70,
static magenta = @0x41192e78, static yellow = @0x41192e80,
static darkRed = @0x41192e88, static darkGreen = @0x41192e90,
static darkBlue = @0x41192e98, static darkCyan = @0x41192ea0,
static darkMagenta = @0x41192ea8, static darkYellow = @0x41192eb0,
static arrowCursor = @0x41191800, static upArrowCursor = @0x41191804,
static crossCursor = @0x41191808, static waitCursor = @0x4119180c,
static ibeamCursor = @0x41191810, static sizeVerCursor = @0x41191814,
static sizeHorCursor = @0x41191818,
static sizeBDiagCursor = @0x4119181c,
static sizeFDiagCursor = @0x41191820,
static sizeAllCursor = @0x41191824, static blankCursor = @0x41191828,
static splitVCursor = @0x41191830, static splitHCursor = @0x4119182c,
static pointingHandCursor = @0x41191834,
static forbiddenCursor = @0x41191838,
static whatsThisCursor = @0x4119183c}, data = 0x82f9728},
cbrush = {<Qt> = {static color0 = @0x41192e20, static color1 = @0x41192e28,
static black = @0x41192e30, static white = @0x41192e38,
static darkGray = @0x41192e40, static gray = @0x41192e48,
static lightGray = @0x41192e50, static red = @0x41192e58,
static green = @0x41192e60, static blue = @0x41192e68,
static cyan = @0x41192e70, static magenta = @0x41192e78,
static yellow = @0x41192e80, static darkRed = @0x41192e88,
static darkGreen = @0x41192e90, static darkBlue = @0x41192e98,
static darkCyan = @0x41192ea0, static darkMagenta = @0x41192ea8,
static darkYellow = @0x41192eb0, static arrowCursor = @0x41191800,
static upArrowCursor = @0x41191804, static crossCursor = @0x41191808,
static waitCursor = @0x4119180c, static ibeamCursor = @0x41191810,
static sizeVerCursor = @0x41191814, static sizeHorCursor = @0x41191818,
static sizeBDiagCursor = @0x4119181c,
static sizeFDiagCursor = @0x41191820,
static sizeAllCursor = @0x41191824, static blankCursor = @0x41191828,
static splitVCursor = @0x41191830, static splitHCursor = @0x4119182c,
static pointingHandCursor = @0x41191834,
static forbiddenCursor = @0x41191838,
static whatsThisCursor = @0x4119183c}, data = 0x8299b60}, crgn = {
data = 0x82f0818}, tabstops = 0, tabarray = 0x0, tabarraylen = 0,
block_ext = false, wx = 8, wy = 1091160078, ww = 137049008, wh = 10486038,
vx = 137243232, vy = -1073752368, vw = 0, vh = 0, wxmat = {_m11 = 1,
_m12 = 0, _m21 = 0, _m22 = 1, _dx = 0, _dy = 0}, xmat = {_m11 = 1,
_m12 = 0, _m21 = 0, _m22 = 1, _dx = 0, _dy = 0}, ixmat = {_m11 = 1,
_m12 = 0, _m21 = 0, _m22 = 1, _dx = 0, _dy = 0}, txop = 0, txinv = false,
penRef = 0x0, brushRef = 0x0, ps_stack = 0x0, wm_stack = 0x0, dpy = 0x0,
scrn = 0, hd = 318, rendhd = 1092125308, gc = 0x0, gc_brush = 0x0, curPt = {
xp = 0, yp = 0}, clip_serial = 0}, haveGroupInfoSet = false,
skipUpdate = true, pageDowner = true, connected = true, curitem = 0x849f210,
delitem = 0x0, theme = 0x82d1eb8, xmldata = <incomplete type>, skipNum = 0,
skipCnt = 0, listCount = 7, countInGroup = 15, inTitle = true,
playingVideo = true, leftRight = false, curTitle = 0, curShowing = 0,
titleData = 0x84a15f4, showList = {sh = 0x82e2860}, showData = {
sh = 0x82df8e0}, showDateData = {sh = 0x82f0118}, type = Play,
arrowAccel = true, timer = 0x849f100, nvp = 0x849a2e8, rbuffer = 0x831f0e0,
decoder = 1130195760, state = kPlaying, killState = kDone, killTimeout = {
ds = 0}, nvpTimeout = {ds = 9481939}, waitToStartPreviewTimer = {
ds = 9476518}, waitToStart = false, lastUpdateTime = {d = {jd = 2453167},
t = {ds = 9476372}}, graphicPopup = true, playbackPreview = true,
generatePreviewPixmap = true, dateformat = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x82d1498,
static shared_null = 0x81df580}, timeformat = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x82d3f08,
static shared_null = 0x81df580}, showDateFormat = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x82afea8,
static shared_null = 0x81df580}, showTimeFormat = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x82eff20,
static shared_null = 0x81df580}, popup = 0x0,
myBackground = <incomplete type>, containerPixmap = 0x14,
fillerPixmap = 0x82d67d8, bgTransBackup = 0x82ef3a0, fullRect = {x1 = 0,
y1 = 0, x2 = 623, y2 = 399}, listRect = {x1 = 0, y1 = 33, x2 = 622,
y2 = 238}, infoRect = {x1 = 0, y1 = 240, x2 = 622, y2 = 399}, usageRect = {
x1 = 0, y1 = 370, x2 = 622, y2 = 395}, videoRect = {x1 = 483, y1 = 240,
x2 = 606, y2 = 319}, listsize = 7, titleitems = 15, popupForeground = {
static color_init = true, static globals_init = true,
static colormodel = d32, d = {argb = 4294967295, d8 = {argb = 4294967295,
pix = 84 'T', invalid = 82 'R', dirty = 73 'I', direct = 68 'D'}, d32 = {
argb = 4294967295, pix = 1145655892}}}, popupBackground = {
static color_init = true, static globals_init = true,
static colormodel = d32, d = {argb = 1224736768, d8 = {argb = 1224736768,
pix = 84 'T', invalid = 82 'R', dirty = 73 'I', direct = 68 'D'}, d32 = {
argb = 1224736768, pix = 1145655892}}}, popupHighlight = {
static color_init = true, static globals_init = true,
static colormodel = d32, d = {argb = 4294967295, d8 = {argb = 4294967295,
pix = 84 'T', invalid = 82 'R', dirty = 73 'I', direct = 68 'D'}, d32 = {
argb = 4294967295, pix = 1145655892}}}, expectingPopup = false,
updateFreeSpace = true, freeSpaceTimer = 0x82f4510, freeSpaceTotal = 0,
freeSpaceUsed = 0, groupDisplayName = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x82ef3c0,
static shared_null = 0x81df580}, recGroup = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x82f94d8,
static shared_null = 0x81df580}, recGroupPassword = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x82f07f0,
static shared_null = 0x81df580}, curGroupPassword = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x82f6ef8,
static shared_null = 0x81df580}, recGroupType = {sh = 0x81f4068},
recGroupPwCache = {sh = 0x82d5998}, choosePopup = 0x8319dd4,
chooseListBox = 0x0, chooseComboBox = 0x0, chooseLineEdit = 0x3ff00000,
chooseOldPassword = 0x0, chooseNewPassword = 0x0, chooseOkButton = 0xffffffff,
chooseDeleteButton = 0x67, chooseGroupPassword = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x81df580,
static shared_null = 0x81df580}, groupnameAsAllProg = false,
previewPixmap = 0x849fc90, previewProgramInfo = 0x849f210, listOrder = 1,
overrectime = 0, underrectime = 0, playingSomething = false}
#5 0x0806cae3 in TVMenuCallback(void*, QString&) (data=0x8299cd8,
selection=@0x8319dd4) at main.cpp:391
sel = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x82f9b58,
static shared_null = 0x81df580}
#6 0x408377ec in ThemedMenuPrivate::handleAction(QString const&) (
this=0x8319cd8, action=@0x82f55fc) at themedmenu.cpp:2108
No locals.
#7 0x40835c12 in ThemedMenuPrivate::keyPressHandler(QKeyEvent*) (
this=0x8319cd8, e=0xbfffdfd0) at themedmenu.cpp:1923
action = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x82b6f20,
static shared_null = 0x81df580}
i = 0
lastbutton = (ThemedButton *) 0x82f55c0
oldrow = 2
handled = true
actions = {<QValueList<QString>> = {sh = 0x82f2e78}, <No data fields>}
#8 0x40838c1f in ThemedMenu::keyPressEvent(QKeyEvent*) (this=0x82e2368,
e=0xbfffdfd0) at themedmenu.cpp:2294
No locals.
#9 0x40dbb06c in QWidget::event(QEvent*) ()
from /usr/lib/qt-3.1/lib/libqt-mt.so.3
No symbol table info available.
#10 0x40d28f24 in QApplication::internalNotify(QObject*, QEvent*) ()
from /usr/lib/qt-3.1/lib/libqt-mt.so.3
No symbol table info available.
#11 0x40d28ab7 in QApplication::notify(QObject*, QEvent*) ()
from /usr/lib/qt-3.1/lib/libqt-mt.so.3
No symbol table info available.
#12 0x40cd0abe in QETWidget::translateKeyEvent(_XEvent const*, bool) ()
from /usr/lib/qt-3.1/lib/libqt-mt.so.3
No symbol table info available.
#13 0x40cccd14 in QApplication::x11ProcessEvent(_XEvent*) ()
from /usr/lib/qt-3.1/lib/libqt-mt.so.3
No symbol table info available.
#14 0x40ce1bda in QEventLoop::processEvents(unsigned) ()
from /usr/lib/qt-3.1/lib/libqt-mt.so.3
No symbol table info available.
#15 0x40d3ccf6 in QEventLoop::enterLoop() ()
from /usr/lib/qt-3.1/lib/libqt-mt.so.3
No symbol table info available.
#16 0x40d291b1 in QApplication::enter_loop() ()
from /usr/lib/qt-3.1/lib/libqt-mt.so.3
No symbol table info available.
#17 0x40896449 in MythDialog::exec() (this=0x82e2368) at mythdialogs.cpp:788
res = 1082745806
#18 0x0806e0f8 in RunMenu(QString) (themedir=
{static null = {static null = <same as static member of an already seen type
>, d = 0x81df580, static shared_null = 0x81df580}, d = 0x82b7788, static shared_nu
ll = 0x81df580}) at main.cpp:542
exitstatus = 0
#19 0x08072a54 in main (argc=1, argv=0xbfffe724) at main.cpp:1001
lcd_host = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x82af9b0,
static shared_null = 0x81df580}
lcd_port = 13666
a = <incomplete type>
logfile = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x81e3f50,
static shared_null = 0x81df580}
verboseString = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x81efe08,
static shared_null = 0x81df580}
pluginname = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x81e49f0,
static shared_null = 0x81df580}
finfo = {fn = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x8212700,
static shared_null = 0x81df580}, fic = 0x0, cache = true, symLink = false}
binname = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x8299d28,
static shared_null = 0x81df580}
logfd = -1
fileprefix = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x829aa98,
static shared_null = 0x81df580}
dir = <incomplete type>
db = (struct QSqlDatabase *) 0x82a4830
themename = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x831f700,
static shared_null = 0x81df580}
randomtheme = false
themedir = {static null = {
static null = <same as static member of an already seen type>,
d = 0x81df580, static shared_null = 0x81df580}, d = 0x82b7788,
static shared_null = 0x81df580}
switchMode = false
mainWindow = (class MythMainWindow *) 0x82bf808
pmanager = (MythPluginManager *) 0x82cf738
mon = (class MediaMonitor *) 0x0
exitstatus = 25
#20 0x42015704 in __libc_start_main () from /lib/tls/libc.so.6
No symbol table info available.
0x401d1df7 62 in mythdbcon.h
More information about the mythtv-dev
mailing list