[FFmpeg-devel] [PATCH 2/2] lavd/opengl_enc: check strings before parsing them.
Mark Thompson
sw at jkqxz.net
Thu Feb 20 00:44:54 EET 2020
On 17/02/2020 12:50, Nicolas George wrote:
> Fix a segfault if OpenGL was not initialized before calling
> write_header().
>
> Signed-off-by: Nicolas George <george at nsup.org>
> ---
> libavdevice/opengl_enc.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/libavdevice/opengl_enc.c b/libavdevice/opengl_enc.c
> index fa94345a7c..3d60f7d068 100644
> --- a/libavdevice/opengl_enc.c
> +++ b/libavdevice/opengl_enc.c
> @@ -588,6 +588,10 @@ static av_cold int opengl_read_limits(AVFormatContext *h)
>
> version = glGetString(GL_VERSION);
> extensions = glGetString(GL_EXTENSIONS);
> + if (!version || !extensions) {
> + av_log(h, AV_LOG_ERROR, "OpenGL not available\n");
I'd make the error more direct, since this is to be seen by a developer messing up - it's that there is no OpenGL context current on the calling thread.
> + return AVERROR(ENOSYS);> + }
>
> av_log(h, AV_LOG_DEBUG, "OpenGL version: %s\n", version);
> sscanf(version, "%d.%d", &major, &minor);
>
Intent of patch LGTM.
Thanks,
- Mark
More information about the ffmpeg-devel
mailing list