X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Ffilesys%2Finode.c;h=98dd36a1a9e5c62a537b2316d3b67bcd753f796d;hb=6a93e93d76f792d9fc28d047c67d71b9017a4363;hp=bd68167baa1c5c4b2bcfd02c73b99c194e102c87;hpb=a3e43e91fae97bbdef2a09823e819c1f6950cc32;p=pintos-anon diff --git a/src/filesys/inode.c b/src/filesys/inode.c index bd68167..98dd36a 100644 --- a/src/filesys/inode.c +++ b/src/filesys/inode.c @@ -164,9 +164,12 @@ inode_close (struct inode *inode) list_remove (&inode->elem); /* Deallocate blocks if removed. */ - if (inode->removed) - free_map_release (inode->sector, - bytes_to_sectors (inode->data.length)); + if (inode->removed) + { + free_map_release (inode->sector, 1); + free_map_release (inode->data.start, + bytes_to_sectors (inode->data.length)); + } free (inode); }