[BACK]Return to cd9660_lookup.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / fs / cd9660

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/sys/fs/cd9660/cd9660_lookup.c between version 1.12 and 1.13

version 1.12, 2006/12/09 16:11:50 version 1.13, 2007/10/08 18:04:02
Line 203  searchloop:
Line 203  searchloop:
                  */                   */
                 if ((dp->i_offset & bmask) == 0) {                  if ((dp->i_offset & bmask) == 0) {
                         if (bp != NULL)                          if (bp != NULL)
                                 brelse(bp);                                  brelse(bp, 0);
                         error = cd9660_blkatoff(vdp, (off_t)dp->i_offset,                          error = cd9660_blkatoff(vdp, (off_t)dp->i_offset,
                                              NULL, &bp);                                               NULL, &bp);
                         if (error)                          if (error)
Line 308  foundino:
Line 308  foundino:
                         if (lblkno(imp, dp->i_offset) !=                          if (lblkno(imp, dp->i_offset) !=
                             lblkno(imp, saveoffset)) {                              lblkno(imp, saveoffset)) {
                                 if (bp != NULL)                                  if (bp != NULL)
                                         brelse(bp);                                          brelse(bp, 0);
                                 if ((error = cd9660_blkatoff(vdp,                                  if ((error = cd9660_blkatoff(vdp,
                                             (off_t)saveoffset, NULL, &bp)) != 0)                                              (off_t)saveoffset, NULL, &bp)) != 0)
                                         return (error);                                          return (error);
Line 332  notfound:
Line 332  notfound:
                 goto searchloop;                  goto searchloop;
         }          }
         if (bp != NULL)          if (bp != NULL)
                 brelse(bp);                  brelse(bp, 0);
   
         /*          /*
          * Insert name into cache (as non-existent) if appropriate.           * Insert name into cache (as non-existent) if appropriate.
Line 380  found:
Line 380  found:
          * If ino is different from dp->i_ino,           * If ino is different from dp->i_ino,
          * it's a relocated directory.           * it's a relocated directory.
          */           */
         brelse(bp);          brelse(bp, 0);
         if (flags & ISDOTDOT) {          if (flags & ISDOTDOT) {
                 VOP_UNLOCK(pdp, 0);     /* race to get the inode */                  VOP_UNLOCK(pdp, 0);     /* race to get the inode */
                 error = cd9660_vget_internal(vdp->v_mount, dp->i_ino, &tdp,                  error = cd9660_vget_internal(vdp->v_mount, dp->i_ino, &tdp,
Line 428  cd9660_blkatoff(struct vnode *vp, off_t 
Line 428  cd9660_blkatoff(struct vnode *vp, off_t 
         bsize = blksize(imp, ip, lbn);          bsize = blksize(imp, ip, lbn);
   
         if ((error = bread(vp, lbn, bsize, NOCRED, &bp)) != 0) {          if ((error = bread(vp, lbn, bsize, NOCRED, &bp)) != 0) {
                 brelse(bp);                  brelse(bp, 0);
                 *bpp = NULL;                  *bpp = NULL;
                 return (error);                  return (error);
         }          }

Legend:
Removed from v.1.12  
changed lines
  Added in v.1.13

CVSweb <webmaster@jp.NetBSD.org>