From: Ian Lance Taylor Date: Mon, 10 Feb 2025 23:03:31 +0000 (-0800) Subject: libbacktrace: add cast to avoid undefined shift X-Git-Tag: basepoints/gcc-16~2092 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d5c72da62d29cfa0fff532c66f28670c2dfcd75e;p=thirdparty%2Fgcc.git libbacktrace: add cast to avoid undefined shift Patch from pgerell@github. * elf.c (elf_uncompress_lzma_block): Add casts to avoid potentially shifting a value farther than its type size. --- diff --git a/libbacktrace/elf.c b/libbacktrace/elf.c index d766fa41a61..868d0e1a7f3 100644 --- a/libbacktrace/elf.c +++ b/libbacktrace/elf.c @@ -5878,7 +5878,7 @@ elf_uncompress_lzma_block (const unsigned char *compressed, /* The byte at compressed[off] is ignored for some reason. */ - code = ((uint32_t)(compressed[off + 1] << 24) + code = (((uint32_t)compressed[off + 1] << 24) + ((uint32_t)compressed[off + 2] << 16) + ((uint32_t)compressed[off + 3] << 8) + (uint32_t)compressed[off + 4]);