X-Git-Url: http://ftp.safe.ca/?a=blobdiff_plain;f=fs%2Fisofs%2Fdir.c;h=7901ac9f97ab4728150c0ba68e11e48645f51a26;hb=9c6510a5bfe2f1c5f5b93386c06954be02e974e4;hp=6030956b894b907a91b95d9af667b728a414a4f7;hpb=94f2f715771d0aa5554451d1e2a920f11b8be3fe;p=safe%2Fjmp%2Flinux-2.6 diff --git a/fs/isofs/dir.c b/fs/isofs/dir.c index 6030956..7901ac9 100644 --- a/fs/isofs/dir.c +++ b/fs/isofs/dir.c @@ -193,12 +193,17 @@ static int do_isofs_readdir(struct inode *inode, struct file *filp, /* Handle everything else. Do name translation if there is no Rock Ridge NM field. */ - if (sbi->s_unhide == 'n') { - /* Do not report hidden or associated files */ - if (de->flags[-sbi->s_high_sierra] & 5) { - filp->f_pos += de_len; - continue; - } + + /* + * Do not report hidden files if so instructed, or associated + * files unless instructed to do so + */ + if ((sbi->s_hide == 'y' && + (de->flags[-sbi->s_high_sierra] & 1)) || + (sbi->s_showassoc =='n' && + (de->flags[-sbi->s_high_sierra] & 4))) { + filp->f_pos += de_len; + continue; } map = 1;