Index: themes/blue/ui.xml
===================================================================
--- themes/blue/ui.xml	(revision 10688)
+++ themes/blue/ui.xml	(working copy)
@@ -889,6 +889,12 @@
         <position>20,106</position>
       </image>
 
+      <image name="preserved" draworder="6">
+        <filename>type/preserve.png</filename>
+        <position>289,106</position>
+      </image>
+      
+
     </container>
 
     <container name="program_info_del">
Index: libs/libmythtv/programinfo.h
===================================================================
--- libs/libmythtv/programinfo.h	(revision 10688)
+++ libs/libmythtv/programinfo.h	(working copy)
@@ -55,7 +55,8 @@
     FL_STEREO         = 0x080,
     FL_CC             = 0x100,
     FL_HDTV           = 0x200,
-    FL_TRANSCODED     = 0x400
+    FL_TRANSCODED     = 0x400,
+    FL_PRESERVED      = 0x800
 };
 
 enum RecStatusType {
Index: libs/libmythtv/programinfo.cpp
===================================================================
--- libs/libmythtv/programinfo.cpp	(revision 10688)
+++ libs/libmythtv/programinfo.cpp	(working copy)
@@ -3508,7 +3508,7 @@
     MSqlQuery query(MSqlQuery::InitCon());
 
     query.prepare("SELECT commflagged, cutlist, autoexpire, "
-                  "editing, bookmark, stereo, closecaptioned, hdtv "
+                  "editing, bookmark, stereo, closecaptioned, hdtv, preserve "
                   "FROM recorded LEFT JOIN recordedprogram ON "
                   "(recorded.chanid = recordedprogram.chanid AND "
                   "recorded.starttime = recordedprogram.starttime) "
@@ -3530,6 +3530,7 @@
         flags |= (query.value(5).toInt() == 1) ? FL_STEREO : 0;
         flags |= (query.value(6).toInt() == 1) ? FL_CC : 0;
         flags |= (query.value(7).toInt() == 1) ? FL_HDTV : 0;
+        flags |= (query.value(8).toInt() == 1) ? FL_PRESERVED : 0;
     }
 
     return flags;
Index: programs/mythfrontend/playbackbox.cpp
===================================================================
--- programs/mythfrontend/playbackbox.cpp	(revision 10688)
+++ programs/mythfrontend/playbackbox.cpp	(working copy)
@@ -786,6 +786,7 @@
         iconMap["stereo"]      = FL_STEREO;
         iconMap["cc"]          = FL_CC;
         iconMap["hdtv"]        = FL_HDTV;
+        iconMap["preserved"]   = FL_PRESERVED;
 
         UIImageType *itype;
         for (it = iconMap.begin(); it != iconMap.end(); ++it)
Index: programs/mythbackend/mainserver.cpp
===================================================================
--- programs/mythbackend/mainserver.cpp	(revision 10688)
+++ programs/mythbackend/mainserver.cpp	(working copy)
@@ -1032,7 +1032,7 @@
         "recorded.progend, recorded.stars, "
         "recordedprogram.stereo, recordedprogram.hdtv, "
         "recordedprogram.closecaptioned, transcoded, "
-        "recorded.recpriority "
+        "recorded.recpriority, recorded.preserve "
         "FROM recorded "
         "LEFT JOIN record ON recorded.recordid = record.recordid "
         "LEFT JOIN channel ON recorded.chanid = channel.chanid "
@@ -1136,6 +1136,7 @@
             flags |= (query.value(34).toInt() == 1) ? FL_CC : 0;
             flags |= (query.value(35).toInt() == TRANSCODING_COMPLETE) ?
                       FL_TRANSCODED : 0;
+            flags |= (query.value(37).toInt() == 1) ? FL_PRESERVED : 0;
 
             inUseKey = query.value(0).toString() + " " +
                        query.value(1).toDateTime().toString(Qt::ISODate);
