Index: libs/libmythtv/siparser.cpp
===================================================================
--- libs/libmythtv/siparser.cpp	(revision 7023)
+++ libs/libmythtv/siparser.cpp	(working copy)
@@ -3059,10 +3059,10 @@
         //is this event on a channel we shoud look for a subtitle?
         if(PrivateTypes.ParseSubtitleServiceIDs.contains(event.ServiceID))
         {
-            int pos=event.Description.find(". ");
-            if(pos!=-1 && pos<=40 && (event.Description.length()-(pos+2))>0 )
+            int pos=event.Description.find(QRegExp("[.\?] "));
+            if(pos!=-1 && pos<=55 && (event.Description.length()-(pos+2))>0 )
             {
-                event.Event_Subtitle=event.Description.left(pos);
+                event.Event_Subtitle=event.Description.left(pos+(event.Description[pos]=='?' ? 1 : 0));
                 event.Description=event.Description.mid(pos+2);
             }
         }
Index: libs/libmythtv/dbcheck.cpp
===================================================================
--- libs/libmythtv/dbcheck.cpp	(revision 7023)
+++ libs/libmythtv/dbcheck.cpp	(working copy)
@@ -10,7 +10,7 @@
 #include "mythdbcon.h"
 
 /// This is the DB schema version expected by the running MythTV instance.
-const QString currentDatabaseVersion = "1090";
+const QString currentDatabaseVersion = "1091";
 
 static bool UpdateDBVersionNumber(const QString &newnumber);
 static bool performActualUpdate(const QString updates[], QString version,
@@ -1985,12 +1985,23 @@
 	    "ALTER TABLE capturecard ADD COLUMN dbox2_httpport INT UNSIGNED NOT NULL DEFAULT 80;",
 	    "ALTER TABLE capturecard ADD COLUMN dbox2_host varchar(32) NULL;",
 	    ""
-	};
+        };
 
         if (!performActualUpdate(updates, "1090", dbver))
             return false;
     }
 
+    if (dbver == "1090")
+    {
+        const QString updates[] = {
+"DELETE FROM dtv_privatetypes WHERE sitype='dvb' AND networkid=40999 AND private_type='parse_subtitle_list';",
+"INSERT INTO dtv_privatetypes (sitype,networkid,private_type,private_value) VALUES ('dvb',40999,'parse_subtitle_list','1070,1308,1041,1306,1307,1030,1016,1131,1068,1069');",
+""
+        };
+        if (!performActualUpdate(updates, "1091", dbver))
+            return false;
+    }
+
 // Drop xvmc_buffer_settings at some point
 // Drop dead DVB tables eventually, too   
     
