diff options
author | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2022-07-08 16:49:36 +0200 |
---|---|---|
committer | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2022-07-08 19:17:18 +0200 |
commit | fd0b2e7a242568f5b11f8a22ce0c3f639e6bbbfc (patch) | |
tree | 7d078e1f54ccaf6f68789d951c28922b9b85c03c /lib/sqfs/block_processor/internal.h | |
parent | 5b960f8b3a1cb5216f76976298b036277815279b (diff) |
Fix: libfstree: double free in error path
If fstree_mknode fails, because the parent link count would overflow,
the function fails and cleans up behind it. The problem arises because
the function does this check *after* inserting the node in the parent
node, so it is later free'd again, when destroying the rest of the
tree.
This patch moves the insertion after the check to mitigate the problem.
Reported-by: Marvin Renich <mrvn@renich.org>
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'lib/sqfs/block_processor/internal.h')
0 files changed, 0 insertions, 0 deletions