Only restore the bits for wallpapers that aren't built in.
diff --git a/libs/utils/BackupData.cpp b/libs/utils/BackupData.cpp
index c51d989..0cef35a 100644
--- a/libs/utils/BackupData.cpp
+++ b/libs/utils/BackupData.cpp
@@ -193,6 +193,7 @@
         if ((actual) != (expected)) { \
             if ((actual) == 0) { \
                 m_status = EIO; \
+                m_done = true; \
             } else { \
                 m_status = errno; \
             } \
@@ -222,7 +223,7 @@
 
     amt = skip_padding();
     if (amt == EIO) {
-        *done = true;
+        *done = m_done = true;
         return NO_ERROR;
     }
     else if (amt != NO_ERROR) {
@@ -338,6 +339,10 @@
         m_status = errno;
         return -1;
     }
+    if (amt == 0) {
+        m_status = EIO;
+        m_done = true;
+    }
     m_pos += amt;
     return amt;
 }