Hi Manuel On Tue, Mar 04, 2025 at 06:07:18PM +0100, Manuel Lauss wrote: > The left and top parameters of an FOBJ are signed values. > > Signed-off-by: Manuel Lauss > --- > v4: revert v3, it arose due to a misunderstanding > v3: change the bytestream accessor to signed too > v2: no changes > libavcodec/sanm.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/libavcodec/sanm.c b/libavcodec/sanm.c > index a4f0a28c7c..71dbac4320 100644 > --- a/libavcodec/sanm.c > +++ b/libavcodec/sanm.c > @@ -1238,8 +1238,8 @@ static int old_codec48(SANMVideoContext *ctx, int width, int height) > static int process_frame_obj(SANMVideoContext *ctx) > { > uint16_t codec = bytestream2_get_le16u(&ctx->gb); > - uint16_t left = bytestream2_get_le16u(&ctx->gb); > - uint16_t top = bytestream2_get_le16u(&ctx->gb); > + int16_t left = bytestream2_get_le16u(&ctx->gb); > + int16_t top = bytestream2_get_le16u(&ctx->gb); > uint16_t w = bytestream2_get_le16u(&ctx->gb); > uint16_t h = bytestream2_get_le16u(&ctx->gb); Does the following code also handle all error conditions that negative left/top could now trigger ? thx [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB It is dangerous to be right in matters on which the established authorities are wrong. -- Voltaire