diff --git a/VersionASM b/VersionASM
index 420aa6ab2e90019509d87f281210cb2cb1fe470b..44dd73ef678aac19464bf06cc873b99fcc4a5fcd 100644
--- a/VersionASM
+++ b/VersionASM
@@ -13,11 +13,11 @@
                         GBLS    Module_ComponentPath
 Module_MajorVersion     SETS    "5.35"
 Module_Version          SETA    535
-Module_MinorVersion     SETS    "4.79.2.244"
-Module_Date             SETS    "27 Oct 2014"
-Module_ApplicationDate  SETS    "27-Oct-14"
+Module_MinorVersion     SETS    "4.79.2.245"
+Module_Date             SETS    "04 Nov 2014"
+Module_ApplicationDate  SETS    "04-Nov-14"
 Module_ComponentName    SETS    "Kernel"
 Module_ComponentPath    SETS    "castle/RiscOS/Sources/Kernel"
-Module_FullVersion      SETS    "5.35 (4.79.2.244)"
-Module_HelpVersion      SETS    "5.35 (27 Oct 2014) 4.79.2.244"
+Module_FullVersion      SETS    "5.35 (4.79.2.245)"
+Module_HelpVersion      SETS    "5.35 (04 Nov 2014) 4.79.2.245"
                         END
diff --git a/VersionNum b/VersionNum
index 17d62d9536ae0a60b75c88047b1813da1e1e6f8d..1252bc6032003acb44eabb75bba315a1464a01ae 100644
--- a/VersionNum
+++ b/VersionNum
@@ -5,19 +5,19 @@
  *
  */
 #define Module_MajorVersion_CMHG        5.35
-#define Module_MinorVersion_CMHG        4.79.2.244
-#define Module_Date_CMHG                27 Oct 2014
+#define Module_MinorVersion_CMHG        4.79.2.245
+#define Module_Date_CMHG                04 Nov 2014
 
 #define Module_MajorVersion             "5.35"
 #define Module_Version                  535
-#define Module_MinorVersion             "4.79.2.244"
-#define Module_Date                     "27 Oct 2014"
+#define Module_MinorVersion             "4.79.2.245"
+#define Module_Date                     "04 Nov 2014"
 
-#define Module_ApplicationDate          "27-Oct-14"
+#define Module_ApplicationDate          "04-Nov-14"
 
 #define Module_ComponentName            "Kernel"
 #define Module_ComponentPath            "castle/RiscOS/Sources/Kernel"
 
-#define Module_FullVersion              "5.35 (4.79.2.244)"
-#define Module_HelpVersion              "5.35 (27 Oct 2014) 4.79.2.244"
+#define Module_FullVersion              "5.35 (4.79.2.245)"
+#define Module_HelpVersion              "5.35 (04 Nov 2014) 4.79.2.245"
 #define Module_LibraryVersionInfo       "5:35"
diff --git a/s/Arthur2 b/s/Arthur2
index 796042baaa1f792a82c87ae97127620e342f984a..c8233d6c616ae9c141a6729e7d72b7eb5a668cef 100644
--- a/s/Arthur2
+++ b/s/Arthur2
@@ -612,20 +612,23 @@ GSREAD_XPandGetNextByte
         BEQ     GSREAD_AngleBraDaftSoIsnt  ; <> and < > are silly.
 
         ; Copy angle bracketed thing checking for correct termination
+        ; OS_SetVarValue requires system variable names to be space or control
+        ; terminated, so we shall discard anything which violates that rule
         GSVarGetWSpace
         ADD     R12, R12, #GSNameBuff
         MOV     R11, #0
 20      LDRB    R1, [R0], #1
         STRB    R1, [R12], #1
         ADD     R11, R11, #1
-        CMP     R11, #255
-        CMPNE   R1, #13
-        CMPNE   R1, #10
-        CMPNE   R1, #0
-        BEQ     GSREAD_AngleBraDaftSoIsnt
         CMP     R1, #">"
+        BEQ     %FT25
+        CMP     R11, #?GSNameBuff
+        CMPNE   R1, #" "
+        TSTNE   R1, #&E0                ; i.e. EQ if <32
         BNE     %BT20
+        B       GSREAD_AngleBraDaftSoIsnt
 
+25
         ; Check for number first
         MOV     R1, #0
         STRB    R1, [R12, #-1]          ; terminate it