While writing some user-space code recently, I ran across two bugs in the Rock Ridge support code. First, a bogus return value and second links on the cd of the form foo->/bar are returned as foo->//bar. This should fix it. -WJ BTW, I don't read frequently so reply personally. --- linux/fs/isofs/rock.c Tue Jan 4 13:12:23 2000 +++ fixed/fs/isofs/rock.c Sun Oct 8 02:36:30 2000 @@ -213,7 +213,7 @@ printk("RR: RE (%x)\n", inode->i_ino); #endif if (buffer) kfree(buffer); - return -1; + return 0; default: break; } @@ -479,21 +479,11 @@ oldslp = slp; slp = (struct SL_component *) (((char *) slp) + slp->len + 2); - if(slen < 2) { - /* - * If there is another SL record, and this component record - * isn't continued, then add a slash. - */ - if( ((rr->u.SL.flags & 1) != 0) - && ((oldslp->flags & 1) == 0) ) strcat(rpnt,"/"); - break; - } + if(rootflag==0 && (rr->u.SL.flags&1)!=0 && (oldslp->flags&1)==0) + strcat(rpnt, "/"); - /* - * If this component record isn't continued, then append a '/'. - */ - if( (!rootflag) - && ((oldslp->flags & 1) == 0) ) strcat(rpnt,"/"); + if(slen < 2) + break; }; break; - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/