diff options
author | wm4 <wm4@nowhere> | 2018-03-02 12:15:03 +0100 |
---|---|---|
committer | Jan Ekström <jeebjp@gmail.com> | 2018-03-03 02:38:01 +0200 |
commit | ecf4d7a843d55cdd2979f79d36e6f202a82cba5b (patch) | |
tree | 20e41d947c75bfe06831297268164dbd3e3e7940 | |
parent | 1b786a71c1ddcfc4bf519b26bb978d1f4f29c26f (diff) | |
download | mpv-ecf4d7a843d55cdd2979f79d36e6f202a82cba5b.tar.bz2 mpv-ecf4d7a843d55cdd2979f79d36e6f202a82cba5b.tar.xz |
vo_gpu: error out if there were rendering errors when taking screenshot
-rw-r--r-- | video/out/gpu/video.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/video/out/gpu/video.c b/video/out/gpu/video.c index 11c984615d..91a405f25e 100644 --- a/video/out/gpu/video.c +++ b/video/out/gpu/video.c @@ -3154,7 +3154,8 @@ done: debug_check_gl(p, "after OSD rendering"); } - if (gl_sc_error_state(p->sc) || p->broken_frame) { + p->broken_frame |= gl_sc_error_state(p->sc); + if (p->broken_frame) { // Make the screen solid blue to make it visually clear that an // error has occurred float color[4] = {0.0, 0.05, 0.5, 1.0}; @@ -3237,6 +3238,9 @@ void gl_video_screenshot(struct gl_video *p, struct vo_frame *frame, if (!p->ra->fns->tex_download(p->ra, &download_params)) goto done; + if (p->broken_frame) + goto done; + ok = true; done: ra_tex_free(p->ra, &target); |