diff options
author | Kai Sommerfeld <3226626+ksooo@users.noreply.github.com> | 2023-12-27 20:35:23 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-27 20:35:23 +0100 |
commit | fa125a3b3d98a1b2d59406809fc77bc0164084f4 (patch) | |
tree | 278fb943677f07988979f91294adb659d6d069a2 | |
parent | 7a09e7d929aaf94692e4948f06506ef37dac9dfe (diff) | |
parent | 59aa086700ee6bc6c0d88ac72e0ae525e3126aca (diff) |
Merge pull request #24333 from ksooo/video-fix-strm-video-info
[video] Fix no video information available when playing strm files, …
-rw-r--r-- | xbmc/application/Application.cpp | 5 | ||||
-rw-r--r-- | xbmc/video/windows/GUIWindowVideoBase.cpp | 4 |
2 files changed, 6 insertions, 3 deletions
diff --git a/xbmc/application/Application.cpp b/xbmc/application/Application.cpp index 0c195e01fa..720e473cc4 100644 --- a/xbmc/application/Application.cpp +++ b/xbmc/application/Application.cpp @@ -2394,8 +2394,9 @@ bool CApplication::PlayFile(CFileItem item, const std::string& player, bool bRes if (videoInfoTagPath.find("removable://") == 0 || item.IsVideoDb()) path = videoInfoTagPath; - if (!item.HasVideoInfoTag()) - dbs.LoadVideoInfo(path, *item.GetVideoInfoTag()); + // Note that we need to load the tag from database also if the item already has a tag, + // because for example the (full) video info for strm files will be loaded here. + dbs.LoadVideoInfo(path, *item.GetVideoInfoTag()); if (item.HasProperty("savedplayerstate")) { diff --git a/xbmc/video/windows/GUIWindowVideoBase.cpp b/xbmc/video/windows/GUIWindowVideoBase.cpp index b7f43a7132..788885cd64 100644 --- a/xbmc/video/windows/GUIWindowVideoBase.cpp +++ b/xbmc/video/windows/GUIWindowVideoBase.cpp @@ -1077,8 +1077,10 @@ bool CGUIWindowVideoBase::PlayItem(const std::shared_ptr<CFileItem>& pItem, CServiceBroker::GetPlaylistPlayer().Play(); return true; } - else if (pItem->IsPlayList()) + else if (pItem->IsPlayList() && !pItem->IsType(".strm")) { + // Note: strm files being somehow special playlists need to be handled in OnPlay*Media + // load the playlist the old way LoadPlayList(pItem->GetDynPath(), PLAYLIST::TYPE_VIDEO); return true; |