Opened 14 years ago
Closed 14 years ago
#9007 closed defect (Fixed)
mythfrontend crashes when Finnish EPG changes
Reported by: | Owned by: | ||
---|---|---|---|
Priority: | minor | Milestone: | 0.24 |
Component: | MythTV - General | Version: | 0.23.1 |
Severity: | medium | Keywords: | |
Cc: | Ticket locked: | no |
Description
Forwarding upstream:
On YLE (Finnish national broadcasting company) channels but on them without an exception. Every time the EPG data changes to mark the beginning of the next program, MythTV frontend crashes without even an error message, both when watching live TV or a recorded program.
One theory on the cause: The originator might not be EPG in itself. At the beginning of each new program, YLE assigns language codes for all the audio and video channels. (Many programs have both Finnish and Swedish audio and subtitles, and additionally YLE uses “Dutch” for the hearing-impaired subtitles and for the visually-impaired audio channel.)
If needed, thread traces are available on the downstream bug (https://bugs.launchpad.net/ubuntu/+source/mythtv/+bug/629852). Note that there are two of them, and one may be distinctly more useful than the other.
stack trace:
#0 0x00007f992d85fd67 in AvFormatDecoder::GetFrame (this=0x42b29d0, decodetype=kDecodeVideo) at avformatdecoder.cpp:4399 context = 0x7f991aa5c320 mpa_pic = {data = { 0x7f99002430e0 "\021\021\021\021\021\021\021\021\024\022\022\022\020\020\021\020\020\022\024\023\020\017\020\023\021\021\020\020\017\017\017\016\021\021\021\021\021\021\021\021\016\016\016\017\020\020\021\021\020\020\020\020\020\020\020\020\023\022\022\021\021", '\020' <repeats 11 times>, "\021\021\022\021\022\021\022\021\020\020\020\020\020\021\021\021\r\017\021\021\017\016\017\020\023\023\023\023\023\023\023\023\020\020\017\017\017\016\016\016\022\022\017\016\020\024\022\016\017\020\021\021\020\020\021\023\020\020\021\021\021\021\020\020\016\021\021\017\017\021\022\021\017\017\022\025\023\021\021\021\021\020\020\017\017\020\020\021\024\022\021\022\023\023\021\016\021\017\016\016\020\021\020\017\021\020\017\016\020\021\020\r\016\016\017\017\020\020\020\017\021\021\021\021\021\020\020\020"..., 0x7f9900029558 "\202\202\201\200\200\177~~~~~~~~~~", '\177' <repeats 16 times>"\200, \200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177\177\177\177\177\177\177\177\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\201\202\202\202\201\201\200\200\200\177\177\177\200\200\200\201\201\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\202\201\201\201\201\201\201\201\201\202\202\202\202\202\202\202\202\203\203\203\203\203\203\203\203\201\201\201\201\201\201\201\201\202\202\202\202\202\202\202\202\177\200\200\201\201\202\202\202"..., 0x7f99002b07b8 "\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177\177\177\177\177\177\177\177\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177\177\177\177\177\177\177\177\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\177\177\177\177\177\177\177\177\200\200\200\200\200\200\200\200\177\177\177\177\177\177\177\177\200\200\200\200\200\200\200\200\177\177\177\177\177\177\177\177\200\200\200\200\200\200\200\200\201\201\201\201\201\201\201\201\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\201\201\201\201\201\201\201\201\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200"..., 0x0}, linesize = {752, 376, 376, 0}, base = { 0x7f99002401d0 "\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200"..., 0x7f9900028990 "\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200"..., 0x7f99002afbf0 "\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200\200"..., 0x0}, key_frame = 1, pict_type = 1, pts = -9223372036854775808, coded_picture_number = 0, display_picture_number = 0, quality = 0, age = 1073741824, reference = 3, qscale_table = 0x7f991bbd6430 '\006' <repeats 45 times>, qstride = 46, mbskip_table = 0x7f991bbd5da0 "", motion_val = {0x0, 0x0}, mb_type = 0x7f99000449a4, motion_subsample_log2 = 0 '\000', opaque = 0x0, error = {0, 0, 0, 0}, type = 1, repeat_pict = 0, qscale_type = 1, interlaced_frame = 1, top_field_first = 1, pan_scan = 0x7f991bdc3220, palette_has_changed = 0, buffer_hints = 0, dct_coeff = 0x0, ref_index = {0x0, 0x0}, reordered_opaque = -9223372036854775808, hwaccel_picture_private = 0x0, atsc_cc_buf = '\000' <repeats 1023 times>, atsc_cc_len = 0, dvb_cc_buf = '\000' <repeats 127 times>, dvb_cc_len = 0} gotpicture = 48 temppts = 28572833 picframe = 0x0 ret = 29544 dts = false ctype = 0 audSubIdx = -1 curstream = 0x7f991816e7e0 audIdx = 1 subIdx = 2 pkt = 0x7f991baa3270 len = 29544 storevideoframes = false hdr = {sync_word = 1280, crc1 = 7077, sr_code = 153 '\231', bitstream_id = 127 '\177', channel_mode = 0 '\000', lfe_on = 0 '\000', frame_type = 192 '\300', substreamid = 32665, center_mix_level = 191256256, surround_mix_level = 32665, channel_map = 3219, num_blocks = 32665, sr_shift = 0 '\000', sample_rate = 0, bit_rate = 0, channels = 48 '0', frame_size = 2918, channel_layout = 76809136} ptr = 0x7f99000bf680 "" data_size = 4608 has_video = true ofill = 1 ototal = 1536000 total_decoded_audio = 0 pts = 28572833 have_err = false allowedquit = false skipaudio = true othresh = 1152000 firstloop = true #1 0x00007f992d7d5f5c in NuppelVideoPlayer::GetFrameNormal (this=0x4265450, decodetype=kDecodeAV) at NuppelVideoPlayer.cpp:1482 No locals. #2 0x00007f992d7d6e16 in NuppelVideoPlayer::GetFrame (this=0x4265450, decodetype=kDecodeAV, unsafe=false) at NuppelVideoPlayer.cpp:1568 ret = false #3 0x00007f992d7e5e10 in NuppelVideoPlayer::StartPlaying (this=0x4265450, openfile=false) at NuppelVideoPlayer.cpp:3725 dt = kDecodeAV __PRETTY_FUNCTION__ = "bool NuppelVideoPlayer::StartPlaying(bool)" output_video = 140295314773776 decoder_thread = 140295297988368 #4 0x00007f992d817753 in SpawnDecode (param=0x4265450) at playercontext.cpp:29 decoder_thread_pool = 0x0 nvp = 0x4265450 #5 0x00007f992807c9ca in start_thread (arg=<value optimized out>) at pthread_create.c:300 __res = <value optimized out> pd = 0x7f990b667710 unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140295297988368, 486565484700141264, 0, 0, 0, 0, -436085595324512560, -436021551966026032}, mask_was_saved = 0}}, priv = {pad = { 0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <value optimized out> robust = <value optimized out> freesize = <value optimized out> __PRETTY_FUNCTION__ = "start_thread"
Attachments (1)
Change History (5)
comment:1 Changed 14 years ago by
Status: | new → infoneeded_new |
---|
comment:2 Changed 14 years ago by
Plus, the reporter's theory is a total nonsense and the tiny segment of the BT pasted here is basically irrelevant. When forwarding these tickets, it would be more helpful to have the full BT rather than an excerpt.
comment:3 Changed 14 years ago by
Original reporter says this is not occurring in 0.24, so this ticket can be closed. Thanks!
comment:4 Changed 14 years ago by
Milestone: | unknown → 0.24 |
---|---|
Resolution: | → Fixed |
Status: | infoneeded_new → closed |
We are literally days away from .24, and this segfault is in a function that has been heavily refactored-- There is little point in trying to hunt this down, it really, really needs a test with trunk instead, and if the crash still exists, for an updated, proper backtrace to be created.