vout: opengl: converter: prevent FPE with cropped empty spu
authorFrancois Cartegnie <fcvlcdev@free.fr>
Wed, 29 Aug 2018 09:07:38 +0000 (11:07 +0200)
committerSebastian Ramacher <sramacher@debian.org>
Sat, 20 Jul 2019 08:17:45 +0000 (09:17 +0100)
Gbp-Pq: Name 0005-vout-opengl-converter-prevent-FPE-with-cropped-empty.patch

modules/video_output/opengl/converter_sw.c

index e48b800573c1f12c1563562da396bf2dfa782512..4e510bcd07a1e40abd7d3c253f3305ed631e2645 100644 (file)
@@ -234,7 +234,7 @@ tc_pbo_update(const opengl_tex_converter_t *tc, GLuint *textures,
         tc->vt->BindTexture(tc->tex_target, textures[i]);
 
         tc->vt->PixelStorei(GL_UNPACK_ROW_LENGTH, pic->p[i].i_pitch
-                                * tex_width[i] / pic->p[i].i_visible_pitch);
+                                * tex_width[i] / (pic->p[i].i_visible_pitch ?: 1));
 
         tc->vt->TexSubImage2D(tc->tex_target, 0, 0, 0, tex_width[i], tex_height[i],
                               tc->texs[i].format, tc->texs[i].type, NULL);
@@ -493,7 +493,7 @@ upload_plane(const opengl_tex_converter_t *tc, unsigned tex_idx,
     }
     else
     {
-        tc->vt->PixelStorei(GL_UNPACK_ROW_LENGTH, pitch * width / visible_pitch);
+        tc->vt->PixelStorei(GL_UNPACK_ROW_LENGTH, pitch * width / (visible_pitch ?: 1));
         tc->vt->TexSubImage2D(tc->tex_target, 0, 0, 0, width, height,
                               tex_format, tex_type, pixels);
     }