Opened 5 years ago

Closed 5 years ago

Last modified 5 years ago

#10933 closed Patch - Bug Fix (fixed)

[PATCH] Prevent a SEGV in MpegRecorder::run when encoding is stopped

Reported by: Lawrence Rust <lvr@…> Owned by: danielk
Priority: minor Milestone: 0.26
Component: MythTV - Recording Version: Master Head
Severity: medium Keywords: MpegRecorder SEGV
Cc: Ticket locked: no


If the current video source is a demo recorder and liveTV is exited then the BE aborts with a SEGV:

Program terminated with signal 11, Segmentation fault.
0  0xb67f4038 in MpegRecorder::run (this=0x8aa3b00) at mpegrecorder.cpp:1028
1028	                FD_SET(readfd, &rdset);
(gdb) bt
0  0xb67f4038 in MpegRecorder::run (this=0x8aa3b00) at mpegrecorder.cpp:1028
1  0xb5e186e0 in MThread::run (this=0x8a62060) at mthread.cpp:319
2  0xb5e18d34 in MThreadInternal::run (this=0x88cd100) at mthread.cpp:79
3  0xb3b772e0 in QThreadPrivate::start (arg=0x88cd100)
    at thread/qthread_unix.cpp:266
4  0xb3af9e99 in start_thread (arg=0xa0f39b70) at pthread_create.c:304
5  0xb39359ee in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
(gdb) print readfd
$1 = -1

This is the result of MpegRecorder::StopEncoding? closing 'readfd' and setting it to -1.

Attachments (1)

0001-libmythtv-Prevent-a-SEGV-in-MpegRecorder-run-when-en.patch (2.0 KB) - added by Lawrence Rust <lvr@…> 5 years ago.

Download all attachments as: .zip

Change History (3)

Changed 5 years ago by Lawrence Rust <lvr@…>

comment:1 Changed 5 years ago by Daniel Thor Kristjansson <danielk@…>

  • Resolution set to fixed
  • Status changed from new to closed

In 661a1ddd71cfe5b24df72cd4585749a43af2f103/mythtv:

Fixes #10933. Don't close readfd from under MPEGRecorder::run()

comment:2 Changed 5 years ago by wagnerrp

  • Milestone changed from unknown to 0.26
  • Version changed from Unspecified to Master Head

Add Comment

Modify Ticket

as closed The owner will remain danielk.
The resolution will be deleted. Next status will be 'new'.

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

Note: See TracTickets for help on using tickets.