Explorar el Código

When adding initrd file to devarch, only use filename

Signed-off-by: Graham MacDonald <grahamamacdonald@gmail.com>
Graham MacDonald hace 3 años
padre
commit
56c091a4eb
Se han modificado 1 ficheros con 7 adiciones y 1 borrados
  1. 7 1
      sys/src/9/amd64/multiboot.c

+ 7 - 1
sys/src/9/amd64/multiboot.c

@@ -189,7 +189,13 @@ multiboot(u32 magic, u32 pmbi, int vflag)
 				pamapinsert(modstart, ROUNDUP(len, PGSZ), PamMODULE);
 
 				if (!initrd) {
-					addarchfile(p, 0444, mbmoduleread, nil);
+					// We just want the name - no directories
+					char *name = strrchr(p, '/');
+					if (!name || *++name == '\0') {
+						name = p;
+					}
+
+					addarchfile(name, 0444, mbmoduleread, nil);
 					initrd = mod;
 				}
 			}