[mythtv] more progress.. plus a PATCH :)
Reza Naima
reza at reza.net
Wed Aug 20 06:16:55 EDT 2003
I found this...
val.iconpath = query.value(2).toString();
if (val.iconpath == QString::null)
val.iconpath = "(null)";
if (val.iconpath.stripWhiteSpace().length() == 0)
val.iconpath = "(null)";
So, it's not NULL, but rather is set to the text '(null)' for some
reason (I suspect a conspiracy to confuse and irritate me). But it
doesn't seem to ever check for that string again. Rather it checks for
'none'. Seems as if this patch should fix it...
[mythtv at pvr src]$ diff -c mythtv-0.11/libs/libmythtv/guidegrid.cpp
z/mythtv-0.11/libs/libmythtv/guidegrid.cpp
*** mythtv-0.11/libs/libmythtv/guidegrid.cpp 2003-07-31
10:25:46.000000000 -0700
--- z/mythtv-0.11/libs/libmythtv/guidegrid.cpp 2003-08-20
05:12:02.000000000 -0700
***************
*** 855,861 ****
if ((y == (unsigned int)2 && scrolltype != 1) ||
((signed int)y == m_currentRow && scrolltype == 1))
{
! if (chinfo->iconpath != "none" && chinfo->iconpath != "")
{
int iconsize = 0;
if (itype)
--- 855,861 ----
if ((y == (unsigned int)2 && scrolltype != 1) ||
((signed int)y == m_currentRow && scrolltype == 1))
{
! if (chinfo->iconpath != "(null)" && chinfo->iconpath != "")
{
int iconsize = 0;
if (itype)
***************
*** 879,885 ****
if (type)
{
! if (chinfo->iconpath != "none" && chinfo->iconpath != "")
{
int iconsize = 0;
iconsize = type->GetSize();
--- 879,885 ----
if (type)
{
! if (chinfo->iconpath != "(null)" && chinfo->iconpath != "")
{
int iconsize = 0;
iconsize = type->GetSize();
On Wed, Aug 20, 2003 at 04:34:15AM -0700, Reza Naima sent me this...
> I tracked it down to mythfrontend's guidegrid trying to load icons that
> don't exist. The function
>
> void GuideGrid::paintChannels(QPainter *p)
>
> checks to see if there is a valid 'icon' to load ...
>
> if (chinfo->iconpath != "none" && chinfo->iconpath != "" )
>
> however, by printing out chinfo->iconpath.ascii(), I get (null) when I
> print it out.. this is what propages to the mythbackend and causes it to
> crash. I tried to fix it using something like this ...
>
> if (chinfo->iconpath != "none" && chinfo->iconpath != "" && ! chinfo->iconpath.isNull() )
>
> but it's still trying to load (null) iconpaths. I'm fairly tired now,
> to do more investigating. However, as test, I tried updating my
> channel table..
>
> mysql> update channel set icon="none" where icon="";
>
> this fixed my problem and it no longer tries to load the icons from the
> mythbackend. However, this still leaves a few issues :
>
> 1-why does mythbackend crash. I havn't been able to use gdb to figure
> this out.
> 2-if a database entry is blank (""), but not null -- why is iconpath loading
> up as NULL and not "" (which is what is being tested for)
> 3-my sound starts stuttering when i change channels (pundit's intel8x1
> alsa driver) -- well, not related, by it's my new thing to track down
>
> Reza
>
> On Wed, Aug 20, 2003 at 01:15:02AM -0700, Reza Naima sent me this...
> > As stated before, changing channels in the EPG results in requests for a
> > file transfer. Adding some debugging statements....
> >
> > QUrl qurl = slist[1];
> > QString filename = LocalFilePath(qurl);
> >
> > cout << " - Requesting " << filename.ascii() << endl;
> >
> >
> > resulted in...
> >
> > - Requesting /var/mythtv/(null)
> >
> > Every so often as I scroll through the channels. And after enough of
> > them, it segfaults (still need to track that down,
> > though it's painful as I can't seem to run gdb on mythbackend without
> > causing it to crash instantly.)
> >
> > Any hints on where to look for the source of the null file requests?
> >
> > Reza
> >
>
> > _______________________________________________
> > mythtv-dev mailing list
> > mythtv-dev at mythtv.org
> > http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
>
> _______________________________________________
> mythtv-dev mailing list
> mythtv-dev at mythtv.org
> http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
More information about the mythtv-dev
mailing list