[mythtv-commits] Ticket #10610: Frontend enters infinite loop if channel icon == "none"
MythTV
noreply at mythtv.org
Mon Apr 16 03:44:18 UTC 2012
#10610: Frontend enters infinite loop if channel icon == "none"
------------------------+----------------------------------
Reporter: rhansen@… | Type: Patch - Bug Fix
Status: new | Priority: minor
Milestone: unknown | Component: MythTV - General
Version: 0.25-fixes | Severity: medium
Keywords: | Ticket locked: 0
------------------------+----------------------------------
My mythfrontend enters an infinite loop whenever I try to watch live TV.
The following messages repeat in the logs until I hit ESC to exit:
{{{
Apr 15 22:08:07 hostname mythfrontend[27737]: I CoreContext
mythcorecontext.cpp:1178 (CheckProtoVersion) Using protocol version 72
Apr 15 22:08:07 hostname mythfrontend[27737]: I CoreContext
mythcorecontext.cpp:1178 (CheckProtoVersion) Using protocol version 72
Apr 15 22:08:07 hostname mythfrontend[27737]: E CoreContext
remotefile.cpp:172 (openSocket) RemoteFile::openSocket(file data socket):
Failed to open socket, error was filetransfer_filename_empty
Apr 15 22:08:07 hostname mythfrontend[27737]: E CoreContext
mythuihelper.cpp:1349 (LoadScaleImage) MythUIHelper:
LoadScaleImage(myth://ChannelIcon@127.0.0.1:6543/none) failed to load
remote image
Apr 15 22:08:07 hostname mythfrontend[27737]: E CoreContext
mythuihelper.cpp:1378 (LoadScaleImage) MythUIHelper:
LoadScaleImage(myth://ChannelIcon@127.0.0.1:6543/none) failed to load
image
Apr 15 22:08:07 hostname mythfrontend[27737]: I CoreContext
mythcorecontext.cpp:1178 (CheckProtoVersion) Using protocol version 72
Apr 15 22:08:07 hostname mythfrontend[27737]: I CoreContext
mythcorecontext.cpp:1178 (CheckProtoVersion) Using protocol version 72
Apr 15 22:08:07 hostname mythfrontend[27737]: E CoreContext
remotefile.cpp:172 (openSocket) RemoteFile::openSocket(file data socket):
Failed to open socket, error was filetransfer_filename_empty
Apr 15 22:08:07 hostname mythfrontend[27737]: E CoreContext
mythuihelper.cpp:1349 (LoadScaleImage) MythUIHelper:
LoadScaleImage(myth://ChannelIcon@127.0.0.1:6543/none) failed to load
remote image
Apr 15 22:08:07 hostname mythfrontend[27737]: E CoreContext
mythuihelper.cpp:1378 (LoadScaleImage) MythUIHelper:
LoadScaleImage(myth://ChannelIcon@127.0.0.1:6543/none) failed to load
image
Apr 15 22:08:07 hostname mythfrontend[27737]: I CoreContext
mythcorecontext.cpp:1178 (CheckProtoVersion) Using protocol version 72
Apr 15 22:08:07 hostname mythfrontend[27737]: I CoreContext
mythcorecontext.cpp:1178 (CheckProtoVersion) Using protocol version 72
Apr 15 22:08:07 hostname mythfrontend[27737]: E CoreContext
remotefile.cpp:172 (openSocket) RemoteFile::openSocket(file data socket):
Failed to open socket, error was filetransfer_filename_empty
Apr 15 22:08:07 hostname mythfrontend[27737]: E CoreContext
mythuihelper.cpp:1349 (LoadScaleImage) MythUIHelper:
LoadScaleImage(myth://ChannelIcon@127.0.0.1:6543/none) failed to load
remote image
Apr 15 22:08:07 hostname mythfrontend[27737]: E CoreContext
mythuihelper.cpp:1378 (LoadScaleImage) MythUIHelper:
LoadScaleImage(myth://ChannelIcon@127.0.0.1:6543/none) failed to load
image
Apr 15 22:08:07 hostname mythfrontend[27737]: I CoreContext
mythcorecontext.cpp:1178 (CheckProtoVersion) Using protocol version 72
Apr 15 22:08:08 hostname mythfrontend[27737]: I CoreContext
mythcorecontext.cpp:1178 (CheckProtoVersion) Using protocol version 72
Apr 15 22:08:08 hostname mythfrontend[27737]: E CoreContext
remotefile.cpp:172 (openSocket) RemoteFile::openSocket(file data socket):
Failed to open socket, error was filetransfer_filename_empty
Apr 15 22:08:08 hostname mythfrontend[27737]: E CoreContext
mythuihelper.cpp:1349 (LoadScaleImage) MythUIHelper:
LoadScaleImage(myth://ChannelIcon@127.0.0.1:6543/none) failed to load
remote image
Apr 15 22:08:08 hostname mythfrontend[27737]: E CoreContext
mythuihelper.cpp:1378 (LoadScaleImage) MythUIHelper:
LoadScaleImage(myth://ChannelIcon@127.0.0.1:6543/none) failed to load
image
}}}
Here is the backtrace leading up to the error message:
{{{
#0 MythUIHelper::LoadScaleImage (this=0xb406c0, filename=...,
fromcache=true) at mythuihelper.cpp:1309
#1 0x00007ffff535ffe4 in MythImage::Load (this=0x7fffde4ac090,
filename=..., scale=<value optimized out>) at mythimage.cpp:276
#2 0x00007ffff53a53fd in ImageLoader::LoadImage (painter=0xc3e190,
imProps=..., cacheMode=kCacheNormal, parent=0x7fff00000050,
aborted=@0x7fffffff8d01, imageReader=0x0) at mythuiimage.cpp:284
#3 0x00007ffff539f1c1 in MythUIImage::Load (this=0x7fffde4e4ab0,
allowLoadInBackground=false, forceStat=false) at mythuiimage.cpp:1044
#4 0x00007ffff76933a2 in OSD::SetText (this=0x7fffdcc0cab0, window=...,
map=..., timeout=kOSDTimeout_Med) at osd.cpp:435
}}}
Walking back up the call stack, I noticed that `OSD::SetText()` tests to
see if the icon path is empty but does not check to see if it equals
"none" (the default value in the database schema). Attached is an
untested patch that should fix this bug.
--
Ticket URL: <http://code.mythtv.org/trac/ticket/10610>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center
More information about the mythtv-commits
mailing list