Some compilers are very intuitive, and others are not so much, so let's pre-compute the variables e and keylen outside the for loop. Ensuring a minor speed increase regardless of if compiler is smart enough to solve this improvement for itself, or not.
Signed-off-by: Joe Da Silva <digi...@joescat.com> --- libavcodec/xbmdec.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/libavcodec/xbmdec.c b/libavcodec/xbmdec.c index 2ce70204cf..b783d5abe5 100644 --- a/libavcodec/xbmdec.c +++ b/libavcodec/xbmdec.c @@ -39,11 +39,14 @@ static int convert(uint8_t x) static int parse_str_int(const uint8_t *p, const uint8_t *end, const uint8_t *key) { - for(; p<end - strlen(key); p++) { - if (!memcmp(p, key, strlen(key))) + int keylen = strlen(key); + const uint8_t *e = end - keylen; + + for(; p < e; p++) { + if (!memcmp(p, key, keylen)) break; } - p += strlen(key); + p += keylen; if (p >= end) return INT_MIN; -- 2.30.0 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".