diff --git a/lib/header.c b/lib/header.c index 1a55cea153..2c3348ca74 100644 --- a/lib/header.c +++ b/lib/header.c @@ -475,7 +475,7 @@ static int dataLength(rpm_tagtype_t type, rpm_constdata_t p, rpm_count_t count, if (typeSizes[type] == -1) return -1; length = typeSizes[(type & 0xf)] * count; - if (length < 0 || (se && (s + length) > se)) + if (length < 0 || (se && se - s < length)) return -1; break; }