X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=src%2Fmount_image.c;h=ac914618cd5166fe8851545998fad613ccf113da;hp=d9a03a998febc11e2ecc2bb932d956a164be8551;hb=12d5058b6fdcefbaef9d8d4a199d8bf5df3d5f30;hpb=ce6b853107173c96fb04754aeb9e250a07bd4a07;ds=sidebyside diff --git a/src/mount_image.c b/src/mount_image.c index d9a03a99..ac914618 100644 --- a/src/mount_image.c +++ b/src/mount_image.c @@ -259,8 +259,13 @@ inode_put_fd(struct wim_inode *inode, struct wimfs_fd *fd) inode->i_fds[fd->idx] = NULL; FREE(fd); - if (--inode->i_num_opened_fds == 0 && inode->i_nlink == 0) - free_inode(inode); + if (--inode->i_num_opened_fds == 0) { + FREE(inode->i_fds); + inode->i_fds = NULL; + inode->i_num_allocated_fds = 0; + if (inode->i_nlink == 0) + free_inode(inode); + } } static int