diff --git a/VersionNum b/VersionNum
index e8b129d93828c642ce051d51079822c253b00577..5f3cd7d7af682a2258f87319563dde0b2c2b3d9b 100644
--- a/VersionNum
+++ b/VersionNum
@@ -1,23 +1,23 @@
-/* (0.06)
+/* (0.07)
  *
  * This file is automatically maintained by srccommit, do not edit manually.
  * Last processed by srccommit version: 1.1.
  *
  */
-#define Module_MajorVersion_CMHG        0.06
+#define Module_MajorVersion_CMHG        0.07
 #define Module_MinorVersion_CMHG        
-#define Module_Date_CMHG                14 Jan 2012
+#define Module_Date_CMHG                09 Jul 2012
 
-#define Module_MajorVersion             "0.06"
-#define Module_Version                  6
+#define Module_MajorVersion             "0.07"
+#define Module_Version                  7
 #define Module_MinorVersion             ""
-#define Module_Date                     "14 Jan 2012"
+#define Module_Date                     "09 Jul 2012"
 
-#define Module_ApplicationDate          "14-Jan-12"
+#define Module_ApplicationDate          "09-Jul-12"
 
 #define Module_ComponentName            "Bootxxxx"
 #define Module_ComponentPath            "castle/RiscOS/Sources/SystemRes/Configure2/PlugIns/Bootxxxx"
 
-#define Module_FullVersion              "0.06"
-#define Module_HelpVersion              "0.06 (14 Jan 2012)"
-#define Module_LibraryVersionInfo       "0:6"
+#define Module_FullVersion              "0.07"
+#define Module_HelpVersion              "0.07 (09 Jul 2012)"
+#define Module_LibraryVersionInfo       "0:7"
diff --git a/c/List b/c/List
index 5b5528a26f0410f5967a5f0387a6cc718bdb3193..45b8a08aa8e3a6008dd0a8f6e2fba7f13b0a5f23 100644
--- a/c/List
+++ b/c/List
@@ -176,7 +176,7 @@ _kernel_oserror *List_Read (BOOL rescan)
   err = window_get_wimp_handle (0, Pane_Obj, &(state.window_handle));
   if (!err) err = wimp_get_window_state (&state);
   /* Remember where top of main list was on screen (for rescans) */
-  if (!err) yfixed = ListHead.next->pos.ymax + state.visible_area.ymax - state.yscroll;
+  if (!err && ListHead.next) yfixed = ListHead.next->pos.ymax + state.visible_area.ymax - state.yscroll;
 
   /* Free old list */
   static_FreeLists (!preserve_main);
@@ -332,7 +332,7 @@ _kernel_oserror *List_Read (BOOL rescan)
   if (!err) err = wimp_get_window_state (&state); /* it may have changed */
   if (!err)
   {
-    if (rescan && ListHead.next->next != NULL)
+    if (rescan && ListHead.next && ListHead.next->next != NULL)
     {
       state.yscroll = ListHead.next->pos.ymax + state.visible_area.ymax - yfixed;
     }