- if (settings && settings_size > 0)
- avio_printf(pb, " %.*s", settings_size, settings);
+ if (settings_size > INT_MAX)
+ return AVERROR(EINVAL);
+
+ settings_size_int = settings_size;
+ if (settings && settings_size_int > 0)
+ avio_printf(pb, " %.*s", settings_size_int, settings);