struct inode* unixfs_internal_iget(ino_t ino) { if (ino == OSXFUSE_ROOTINO) ino = MINIX_ROOT_INO; struct super_block* sb = unixfs; struct inode* inode = unixfs_inodelayer_iget(ino); if (!inode) { fprintf(stderr, "*** fatal error: no inode for %llu\n", ino); abort(); } if (inode->I_initialized) return inode; inode->I_sb = unixfs; inode->I_blkbits = sb->s_blocksize_bits; if (minixfs_iget(sb, inode) != 0) { fprintf(stderr, "major problem: failed to read inode %llu\n", ino); unixfs_inodelayer_ifailed(inode); goto bad_inode; } unixfs_inodelayer_isucceeded(inode); return inode; bad_inode: return NULL; }
static struct inode* unixfs_internal_iget(ino_t ino) { struct inode* ip = unixfs_inodelayer_iget(ino); if (!ip) { fprintf(stderr, "*** fatal error: no inode for %llu\n", (ino64_t)ino); abort(); } if (ip->I_initialized) return ip; unixfs_inodelayer_ifailed(ip); return NULL; }