﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc	mlocked
2338	prbuffer NULL pointer check missing in TV::StopStuff	Cougar <cougar@…>	Isaac Richards	"When I can't get stream from one of my backends such thing happen:


{{{
2006-09-07 08:26:54.412 NVP::OpenFile(): Error, file not found: /media/mythstorage/69999_20060907082647.mpg
2006-09-07 08:26:54.419 TV Error: StartPlayer(): NVP is not playing after 20000 msec
QObject::disconnect: Unexpected null parameter
2006-09-07 08:26:57.904 TV Error: LiveTV not successfully started
2006-09-07 08:26:57.904 TV: Attempting to change from WatchingLiveTV to None
Segmentation fault (core dumped)

#0  0x4053bb45 in TV::StopStuff (this=0x83b1010, stopRingBuffers=true, 
    stopPlayers=true, stopRecorders=true) at tv_play.cpp:1215
1215    tv_play.cpp: No such file or directory.
        in tv_play.cpp
(gdb) where
#0  0x4053bb45 in TV::StopStuff (this=0x83b1010, stopRingBuffers=true, 
    stopPlayers=true, stopRecorders=true) at tv_play.cpp:1215
#1  0x405903cc in TV::HandleStateChange (this=0x83b1010) at tv_play.cpp:952
#2  0x4059945c in TV::RunTV (this=0x83b1010) at tv_play.cpp:1514
#3  0x4059b24b in TV::EventThread (param=0x1) at tv_play.cpp:1475
#4  0x41fc8297 in start_thread () from /lib/tls/libpthread.so.0
#5  0x421a037e in clone () from /lib/tls/libc.so.6
#6  0x42e46bb0 in ?? ()
(gdb) p prbuffer
$1 = (class RingBuffer *) 0x0
}}}

In mythtv/libs/libmythtv/tv_play.cpp is the code:

{{{
    if (prbuffer->isDVD())
    {
        VERBOSE(VB_PLAYBACK,LOC + "" StopStuff() -- get dvd player out of still frame or wait status"");
        prbuffer->DVD()->IgnoreStillOrWait(true);
    }
}}}

I don't know should it be always initialized or not and therefore don't know should we first check prbuffer value here or is bug somewhere else. I don't have DVD plugin installed.
"	defect	closed	minor	unknown	mythtv	head	medium	fixed			0
