[Fix][Util] Allow any combination of flags, e.g., forced and default, for external...
authorace20022 <ace20022@xbmc.org>
Mon, 11 Nov 2013 16:13:35 +0000 (17:13 +0100)
committerace20022 <ace20022@ymail.com>
Thu, 21 Nov 2013 20:42:12 +0000 (21:42 +0100)
xbmc/Util.cpp
xbmc/Util.h

index 5a84d9c..cb98517 100644 (file)
@@ -2154,26 +2154,26 @@ void CUtil::GetExternalStreamDetailsFromFilename(const CStdString& strVideo, con
           continue;
         }
       }
-      if (info.flag == 0x1111)
+
+      // try to recognize a flag
+      std::string flag_tmp(*it);
+      StringUtils::ToLower(flag_tmp);
+      if (!flag_tmp.compare("none"))
       {
-        std::string  flag_tmp(*it);
-        StringUtils::ToLower(flag_tmp);
-        if (!flag_tmp.compare("none"))
-        {
-          info.flag = CDemuxStream::FLAG_NONE;
-          continue;
-        }
-        else if (!flag_tmp.compare("default"))
-        {
-          info.flag = CDemuxStream::FLAG_DEFAULT;
-          continue;
-        }
-        else if (!flag_tmp.compare("forced"))
-        {
-          info.flag = CDemuxStream::FLAG_FORCED;
-          continue;
-        }
+        info.flag |= CDemuxStream::FLAG_NONE;
+        continue;
+      }
+      else if (!flag_tmp.compare("default"))
+      {
+        info.flag |= CDemuxStream::FLAG_DEFAULT;
+        continue;
       }
+      else if (!flag_tmp.compare("forced"))
+      {
+        info.flag |= CDemuxStream::FLAG_FORCED;
+        continue;
+      }
+
       name += " " + (*it);
     }
   }
@@ -2181,7 +2181,7 @@ void CUtil::GetExternalStreamDetailsFromFilename(const CStdString& strVideo, con
   name += g_localizeStrings.Get(21602); // External
   StringUtils::Trim(name);
   info.name = StringUtils::RemoveDuplicatedSpacesAndTabs(name);
-  if (info.flag == 0x1111)
+  if (info.flag == 0)
     info.flag = CDemuxStream::FLAG_NONE;
 
   CLog::Log(LOGDEBUG, "%s - Language = '%s' / Name = '%s' / Flag = '%u' from %s", __FUNCTION__, info.language.c_str(), info.name.c_str(), info.flag, strStream.c_str());
index f2133ec..2851897 100644 (file)
@@ -59,7 +59,7 @@ struct ExternalStreamInfo
   std::string language;
   unsigned int flag;
 
-  ExternalStreamInfo() : flag(0x1111){};
+  ExternalStreamInfo() : flag(0){};
 };
 
 class CUtil