Skip to content

Commit 3bc551e

Browse files
committed
extract: Sync "misc: Fix potential memory leak in realloc failure path"
Signed-off-by: sekaiacg <sekaiacg@gmail.com>
1 parent 36ac0a3 commit 3bc551e

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

extract/ExtractHelper.cpp

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -266,9 +266,14 @@ namespace skkk {
266266

267267
if (compressed) {
268268
if (map.m_llen > buffer_size) {
269+
char *newbuffer;
269270
buffer_size = map.m_llen;
270-
buffer = (char *) realloc(buffer, buffer_size);
271-
BUG_ON(!buffer);
271+
newbuffer = static_cast<char *>(realloc(buffer, buffer_size));
272+
if (!newbuffer) {
273+
ret = -ENOMEM;
274+
goto out;
275+
}
276+
buffer = newbuffer;
272277
}
273278
ret = z_erofs_read_one_data(inode, &map, raw, buffer,
274279
0, map.m_llen, false);

0 commit comments

Comments
 (0)