[FIX] Fix romfs code

This commit is contained in:
Michal Simek 2007-08-06 23:35:26 +02:00
parent ab4b956d31
commit f500d9fdeb

View File

@ -124,7 +124,8 @@ static int romfs_list_inode (struct part_info *info, unsigned long offset)
struct romfs_inode *hardlink = NULL; struct romfs_inode *hardlink = NULL;
char str[3], *data; char str[3], *data;
/* mapping spec.info means /*
* mapping spec.info means
* 0 hard link link destination [file header] * 0 hard link link destination [file header]
* 1 directory first file's header * 1 directory first file's header
* 2 regular file unused, must be zero [MBZ] * 2 regular file unused, must be zero [MBZ]
@ -134,40 +135,9 @@ static int romfs_list_inode (struct part_info *info, unsigned long offset)
* 6 socket unused, MBZ * 6 socket unused, MBZ
* 7 fifo unused, MBZ * 7 fifo unused, MBZ
*/ */
switch (inode->next & 0x7) { char attributes[] = "hdflbcsp";
case 0: str[0] = attributes[inode->next & 0x7];
str[0] = 'h'; str[1] = (inode->next & 0x8) ? 'x' : '-';
break;
case 1:
str[0] = 'd';
break;
case 2:
str[0] = 'f';
break;
case 3:
str[0] = 'l';
break;
case 4:
str[0] = 'b';
break;
case 5:
str[0] = 'c';
break;
case 6:
str[0] = 's';
break;
case 7:
str[0] = 'p';
break;
default:
str[0] = '?';
}
if (inode->next & 0x8) {
str[1] = 'x';
} else {
str[1] = '-';
}
str[2] = '\0'; str[2] = '\0';
if ((str[0] == 'b') || (str[0] == 'c')) { if ((str[0] == 'b') || (str[0] == 'c')) {