]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - fs/fat/dir.c
clockevent: simplify list operations
[linux-2.6-omap-h63xx.git] / fs / fat / dir.c
index ccf161dffb63de4f9798f4b04dd61b176f40bcd3..72cbcd61bd951268fa49eb18faf42d516606b6dd 100644 (file)
@@ -313,7 +313,7 @@ int fat_search_long(struct inode *inode, const unsigned char *name,
        wchar_t bufuname[14];
        unsigned char xlate_len, nr_slots;
        wchar_t *unicode = NULL;
-       unsigned char work[8], bufname[260];    /* 256 + 4 */
+       unsigned char work[MSDOS_NAME], bufname[260];   /* 256 + 4 */
        int uni_xlate = sbi->options.unicode_xlate;
        int utf8 = sbi->options.utf8;
        int anycase = (sbi->options.name_check != 's');
@@ -351,7 +351,8 @@ parse_record:
                if (work[0] == 0x05)
                        work[0] = 0xE5;
                for (i = 0, j = 0, last_u = 0; i < 8;) {
-                       if (!work[i]) break;
+                       if (!work[i])
+                               break;
                        chl = fat_shortname2uni(nls_disk, &work[i], 8 - i,
                                                &bufuname[j++], opt_shortname,
                                                de->lcase & CASE_LOWER_BASE);
@@ -365,13 +366,15 @@ parse_record:
                }
                j = last_u;
                fat_short2uni(nls_disk, ".", 1, &bufuname[j++]);
-               for (i = 0; i < 3;) {
-                       if (!de->ext[i]) break;
-                       chl = fat_shortname2uni(nls_disk, &de->ext[i], 3 - i,
+               for (i = 8; i < MSDOS_NAME;) {
+                       if (!work[i])
+                               break;
+                       chl = fat_shortname2uni(nls_disk, &work[i],
+                                               MSDOS_NAME - i,
                                                &bufuname[j++], opt_shortname,
                                                de->lcase & CASE_LOWER_EXT);
                        if (chl <= 1) {
-                               if (de->ext[i] != ' ')
+                               if (work[i] != ' ')
                                        last_u = j;
                        } else {
                                last_u = j;
@@ -445,7 +448,7 @@ static int __fat_readdir(struct inode *inode, struct file *filp, void *dirent,
        int fill_len;
        wchar_t bufuname[14];
        wchar_t *unicode = NULL;
-       unsigned char c, work[8], bufname[56], *ptname = bufname;
+       unsigned char c, work[MSDOS_NAME], bufname[56], *ptname = bufname;
        unsigned long lpos, dummy, *furrfu = &lpos;
        int uni_xlate = sbi->options.unicode_xlate;
        int isvfat = sbi->options.isvfat;
@@ -527,7 +530,8 @@ parse_record:
        if (work[0] == 0x05)
                work[0] = 0xE5;
        for (i = 0, j = 0, last = 0, last_u = 0; i < 8;) {
-               if (!(c = work[i])) break;
+               if (!(c = work[i]))
+                       break;
                chl = fat_shortname2uni(nls_disk, &work[i], 8 - i,
                                        &bufuname[j++], opt_shortname,
                                        de->lcase & CASE_LOWER_BASE);
@@ -549,9 +553,10 @@ parse_record:
        j = last_u;
        fat_short2uni(nls_disk, ".", 1, &bufuname[j++]);
        ptname[i++] = '.';
-       for (i2 = 0; i2 < 3;) {
-               if (!(c = de->ext[i2])) break;
-               chl = fat_shortname2uni(nls_disk, &de->ext[i2], 3 - i2,
+       for (i2 = 8; i2 < MSDOS_NAME;) {
+               if (!(c = work[i2]))
+                       break;
+               chl = fat_shortname2uni(nls_disk, &work[i2], MSDOS_NAME - i2,
                                        &bufuname[j++], opt_shortname,
                                        de->lcase & CASE_LOWER_EXT);
                if (chl <= 1) {
@@ -563,8 +568,8 @@ parse_record:
                        }
                } else {
                        last_u = j;
-                       for (chi = 0; chi < chl && i2 < 3; chi++) {
-                               ptname[i++] = de->ext[i2++];
+                       for (chi = 0; chi < chl && i2 < MSDOS_NAME; chi++) {
+                               ptname[i++] = work[i2++];
                                last = i;
                        }
                }