]> Chaos Git - corbenik/corbenik.git/commitdiff
Potential edge case; when the first byte of the NAND CID is 0x00 - 0x0F, the config...
authorchaoskagami <chaos.kagami@gmail.com>
Tue, 10 Jan 2017 07:52:46 +0000 (02:52 -0500)
committerchaoskagami <chaos.kagami@gmail.com>
Tue, 10 Jan 2017 07:52:46 +0000 (02:52 -0500)
source/config-backend-file.c

index 254aa20f28cd8f202d6b0fe61ef79005c4c81ba4..34edaf1a788b221006b946e0dac498583264e29f 100644 (file)
@@ -103,13 +103,17 @@ load_config(void)
             changed_consoles = 1;
         }
 
-        strcpy(config_file_path, SYSCONFDIR "/config-");
+        strcpy(config_file_path, SYSCONFDIR "/config-00000000");
 
-        size_t len = strlen(config_file_path) + 7;
+        static const char hexDigits[] = "0123456789ABCDEF";
+        char* cfg = config_file_path;
         uint32_t cid_cp = cid[0];
+        while(cfg[1] != 0) cfg++;
+
+        // Get path of actual config.
         while (cid_cp) {
-            static const char hexDigits[] = "0123456789ABCDEF";
-            config_file_path[len--] = hexDigits[(uint32_t)(cid_cp & 0xF)];
+            cfg[0] = hexDigits[(uint32_t)(cid_cp & 0xF)];
+            cfg--;
             cid_cp >>= 4;
         }