[mythtv-commits] Ticket #12650: 0 byte fan art causes segmentation fault
MythTV
noreply at mythtv.org
Sun Apr 10 19:38:42 UTC 2016
#12650: 0 byte fan art causes segmentation fault
-----------------------------------------+-----------------------------
Reporter: jflatt@… | Owner: jyavenard
Type: Bug Report - Crash | Status: new
Priority: minor | Milestone: 0.28
Component: MythTV - Video Library | Version: Master Head
Severity: medium | Resolution:
Keywords: 0 byte fanart fan art crash | Ticket locked: 0
-----------------------------------------+-----------------------------
Comment (by rsiddons):
This is reproducible on Master as of 10-Apr (2e98fb583) and is related to
98bec5c83.
When the File Transfer fails, !HandleAnnounce deletes the !FileTransfer
(decrements to 0). However a socket disconnection always occurs and
MainServer::connectionClosed also tries to clean it up because it is still
in the fileTransferList.
If !HandleAnnounce really needs to delete ft then it should also remove it
from fileTransferList.
However it seems simpler to leave it to the be cleaned up by the
disconnection.
Attached patch does this and prevents the crash.
With patch:
Frontend log
{{{
20:30:06.930006 I RemoteFile::FindFile(): looking for
'/tmdb3.py_10693_coverart.jpg' on 'study' in group 'Coverart' (useregex:
0, allowfallback: 0)
20:30:06.969346 E RemoteFile::openSocket(file data socket): Failed to
open socket, error was filetransfer_unable_to_open_file
20:30:06.975010 D
RemoteFile(myth://Coverart@study/tmdb3.py_10693_coverart.jpg)
20:30:06.975045 I RemoteFile::Exists(): looking for remote file:
myth://Coverart@study/tmdb3.py_10693_coverart.jpg}}}
}}}
Backend log:
{{{
20:30:06.957294 I MainServer: LocalFilePath(/tmdb3.py_10693_coverart.jpg
'tmdb3.py_10693_coverart.jpg'), found file through exhaustive search at
'/home/archive/myth/recordings//tmdb3.py_10693_coverart.jpg'
20:30:06.967560 E
FileRingBuf(/home/archive/myth/recordings//tmdb3.py_10693_coverart.jpg):
OpenFile(): File too small (0B).
20:30:06.967610 I
FileRingBuf(/home/archive/myth/recordings//tmdb3.py_10693_coverart.jpg):
OpenFile() made 1 attempts in 10 ms
20:30:06.967632 I
RingBuf(/home/archive/myth/recordings//tmdb3.py_10693_coverart.jpg):
CalcReadAheadThresh(8000 Kb)
-> threshhold(3584 KB) min read(320 KB) blk
size(128 KB)
20:30:06.968531 E MainServer: Can't open
/home/archive/myth/recordings//tmdb3.py_10693_coverart.jpg
20:30:06.969095 I FileTransfer sock(172a260) disconnected
20:30:06.969124 I calling StopReads()
20:30:06.969140 I
RingBuf(/home/archive/myth/recordings//tmdb3.py_10693_coverart.jpg):
StopReads()
20:30:06.975895 I Playback sock(173ead0) 'study' disconnected
20:30:06.976508 D SG(Coverart): FindFile: Searching for
'tmdb3.py_10693_coverart.jpg'
20:30:06.976528 D SG(Coverart): FindFileDir: Checking
'/home/archive/myth/recordings' for
'/home/archive/myth/recordings/tmdb3.py_10693_coverart.jpg'
20:30:06.976564 D SG(Coverart): FindFile: Found
'/home/archive/myth/recordings/tmdb3.py_10693_coverart.jpg'
}}}
--
Ticket URL: <https://code.mythtv.org/trac/ticket/12650#comment:1>
MythTV <http://www.mythtv.org>
MythTV Media Center
More information about the mythtv-commits
mailing list