Modify
Warning Please read the Ticket HowTo before creating or commenting on a ticket. Failure to do so may cause your ticket to be rejected or result in a slower response.

Opened 3 years ago

Closed 3 years ago

#9427 closed Bug Report - Crash (fixed)

[CRASH] segfault in mythtranscode if run with --infile

Reported by: timowi <mythtv@…> Owned by: beirdo
Priority: minor Milestone: 0.25
Component: MythTV - Mythtranscode Version: 0.24-fixes
Severity: medium Keywords:
Cc: Ticket locked: no

Description

mythtranscode segfault if I start it with --infile and mythtv has no recording for that file in the database.

backtrace:

#0  0x000000000041e6ce in QString (this=0x7f943807d008, other=@0x8) at /usr/qt-4.7/include/QtCore/qstring.h:728
#1  0x00007f944652cefa in ProgramInfo (this=0x7f943807d000, other=@0x0) at programinfo.cpp:226
#2  0x00007f9449203fad in DecoderBase (this=0x7f94380237d0, parent=0x7f9438031710, pginfo=@0x0) at decoderbase.cpp:49
#3  0x00007f944923e3f9 in AvFormatDecoder (this=0x7f94380237d0, parent=0x7f9438031710, pginfo=@0x0, use_null_videoout=true, allow_private_decode=true, no_hardware_decode=false, 
    special_decoding=kAVSpecialDecode_None) at avformatdecoder.cpp:292
#4  0x00007f9449197e3c in MythPlayer::CreateDecoder (this=0x7f9438031710, testbuf=0x7fff047b3e40 "G@", testreadsize=2048, allow_libmpeg2=true, no_accel=false) at mythplayer.cpp:927
#5  0x00007f944919a1fa in MythPlayer::OpenFile (this=0x7f9438031710, retries=0, allow_libmpeg2=true) at mythplayer.cpp:980
#6  0x00000000004224c2 in Transcode::TranscodeFile (this=0x7f943801ede0, inputname=@0x7fff047d68e0, outputname=@0x7fff047d68d0, profileName=@0x7fff047d68c0, honorCutList=false, 
    framecontrol=false, jobID=-1, fifodir=
      {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 186}, alloc = 0, size = 0, data = 0x7f94420feefa, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 38}, alloc = 0, size = 0, data = 0x7f94420fef1a, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x7fff047d6e20, static codecForCStrings = 0x0}, deleteMap=@0x7fff047d6880) at transcode.cpp:406
#7  0x000000000041c059 in main (argc=7, argv=0x7fff047d71e8) at main.cpp:642

Attachments (0)

Change History (4)

comment:1 Changed 3 years ago by beirdo

  • Summary changed from segfault in mythtranscode if run with --infile to [CRASH] segfault in mythtranscode if run with --infile

comment:2 Changed 3 years ago by beirdo

  • Owner set to beirdo
  • Status changed from new to assigned

comment:3 Changed 3 years ago by beirdo

  • Type changed from Bug Report to Bug Report - Crash

comment:4 Changed 3 years ago by Github

  • Milestone changed from unknown to 0.25
  • Resolution set to fixed
  • Status changed from assigned to closed

Make mythtranscode fail gracefully on file not found

Fixes #9427

If a recording doesn't exist, or the recording exists, but is not in the
database, mythtranscode will gracefully refuse to transcode it, rather than
crash.

Also, make the MythContext object be on the stack of main(), such that any exit
from the system will hit the dtor, causing a cleaner shutdown.

Branch: master
Changeset: ca4001dabf3f4c140ae83effc2c7927ab7fd1352

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'new'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.