diff options
Diffstat (limited to 'e2fsprogs/ext2fs/irel_ma.c')
-rw-r--r-- | e2fsprogs/ext2fs/irel_ma.c | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/e2fsprogs/ext2fs/irel_ma.c b/e2fsprogs/ext2fs/irel_ma.c index d9e73f73c..f4fe1e0f3 100644 --- a/e2fsprogs/ext2fs/irel_ma.c +++ b/e2fsprogs/ext2fs/irel_ma.c | |||
@@ -309,8 +309,7 @@ static errcode_t ima_move(ext2_irel irel, ext2_ino_t old, ext2_ino_t new) | |||
309 | return ENOENT; | 309 | return ENOENT; |
310 | 310 | ||
311 | ma->entries[(unsigned) new] = ma->entries[(unsigned) old]; | 311 | ma->entries[(unsigned) new] = ma->entries[(unsigned) old]; |
312 | if (ma->ref_entries[(unsigned) new].refs) | 312 | ext2fs_free_mem(&ma->ref_entries[(unsigned) new].refs); |
313 | ext2fs_free_mem(&ma->ref_entries[(unsigned) new].refs); | ||
314 | ma->ref_entries[(unsigned) new] = ma->ref_entries[(unsigned) old]; | 313 | ma->ref_entries[(unsigned) new] = ma->ref_entries[(unsigned) old]; |
315 | 314 | ||
316 | ma->entries[(unsigned) old].new = 0; | 315 | ma->entries[(unsigned) old].new = 0; |
@@ -332,8 +331,7 @@ static errcode_t ima_delete(ext2_irel irel, ext2_ino_t old) | |||
332 | return ENOENT; | 331 | return ENOENT; |
333 | 332 | ||
334 | ma->entries[old].new = 0; | 333 | ma->entries[old].new = 0; |
335 | if (ma->ref_entries[(unsigned) old].refs) | 334 | ext2fs_free_mem(&ma->ref_entries[(unsigned) old].refs); |
336 | ext2fs_free_mem(&ma->ref_entries[(unsigned) old].refs); | ||
337 | ma->orig_map[ma->entries[(unsigned) old].orig] = 0; | 335 | ma->orig_map[ma->entries[(unsigned) old].orig] = 0; |
338 | 336 | ||
339 | ma->ref_entries[(unsigned) old].num = 0; | 337 | ma->ref_entries[(unsigned) old].num = 0; |
@@ -352,21 +350,17 @@ static errcode_t ima_free(ext2_irel irel) | |||
352 | ma = irel->priv_data; | 350 | ma = irel->priv_data; |
353 | 351 | ||
354 | if (ma) { | 352 | if (ma) { |
355 | if (ma->orig_map) | 353 | ext2fs_free_mem(&ma->orig_map); |
356 | ext2fs_free_mem(&ma->orig_map); | 354 | ext2fs_free_mem(&ma->entries); |
357 | if (ma->entries) | ||
358 | ext2fs_free_mem(&ma->entries); | ||
359 | if (ma->ref_entries) { | 355 | if (ma->ref_entries) { |
360 | for (ino = 0; ino <= ma->max_inode; ino++) { | 356 | for (ino = 0; ino <= ma->max_inode; ino++) { |
361 | if (ma->ref_entries[(unsigned) ino].refs) | 357 | ext2fs_free_mem(&ma->ref_entries[(unsigned) ino].refs); |
362 | ext2fs_free_mem(&ma->ref_entries[(unsigned) ino].refs); | ||
363 | } | 358 | } |
364 | ext2fs_free_mem(&ma->ref_entries); | 359 | ext2fs_free_mem(&ma->ref_entries); |
365 | } | 360 | } |
366 | ext2fs_free_mem(&ma); | 361 | ext2fs_free_mem(&ma); |
367 | } | 362 | } |
368 | if (irel->name) | 363 | ext2fs_free_mem(&irel->name); |
369 | ext2fs_free_mem(&irel->name); | ||
370 | ext2fs_free_mem(&irel); | 364 | ext2fs_free_mem(&irel); |
371 | return 0; | 365 | return 0; |
372 | } | 366 | } |