On 5/7/19 8:49 AM, Hou Qiming wrote:
> My real name is "HOU Qiming". @Marcel Apfelbaum
> <mailto:marcel.apfelb...@gmail.com> can you incorporate that in your v2
> patch? Thanks!

Thanks a lot Qiming :)

> On Tue, May 7, 2019 at 2:25 PM Philippe Mathieu-Daudé <phi...@redhat.com
> <mailto:phi...@redhat.com>> wrote:
> 
>     Hi Marcel,
> 
>     On 5/7/19 7:49 AM, Marcel Apfelbaum wrote:
>     > From: HQM <hqm03s...@gmail.com <mailto:hqm03s...@gmail.com>>
>     >
>     > In a GVT-g setup with dmabuf and GTK GUI, the current 2D texture at
>     > surface_gl_update_texture is not necessarily
>     > surface->texture. Adding a glBindTexture fixes related crashes and
>     > artifacts, and is generally more secure.
>     >
>     > Signed-off-by: HQM <hqm03s...@gmail.com <mailto:hqm03s...@gmail.com>>
> 
>     This looks like an acronym, per
>     
> https://wiki.qemu.org/Contribute/SubmitAPatch#Patch_emails_must_include_a_Signed-off-by:_line
> 
>     "Patch emails must include a Signed-off-by: line [...] Please use your
>     real name to sign a patch (not an alias or acronym)."
> 
>     > Tested-by: Marcel Apfelbaum<marcel.apfelb...@gmail.com
>     <mailto:marcel.apfelb...@gmail.com>>
>     > [fixed malformed patch, rebase to master]
>     > Signed-off-by: Marcel Apfelbaum <marcel.apfelb...@gmail.com
>     <mailto:marcel.apfelb...@gmail.com>>
>     > ---
>     >
>     > v2:
>     >  - fixed malformed patch
>     >  - rebased to master
>     >
>     >  ui/console-gl.c | 18 +++++++++++-------
>     >  1 file changed, 11 insertions(+), 7 deletions(-)
>     >
>     > diff --git a/ui/console-gl.c b/ui/console-gl.c
>     > index a56e1cd8eb..c1cb3bd673 100644
>     > --- a/ui/console-gl.c
>     > +++ b/ui/console-gl.c
>     > @@ -92,13 +92,17 @@ void surface_gl_update_texture(QemuGLShader *gls,
>     > 
>     >      assert(gls);
>     > 
>     > -    glPixelStorei(GL_UNPACK_ROW_LENGTH_EXT,
>     > -                  surface_stride(surface) /
>     surface_bytes_per_pixel(surface));
>     > -    glTexSubImage2D(GL_TEXTURE_2D, 0,
>     > -                    x, y, w, h,
>     > -                    surface->glformat, surface->gltype,
>     > -                    data + surface_stride(surface) * y
>     > -                    + surface_bytes_per_pixel(surface) * x);
>     > +    if (surface->texture) {
>     > +        glBindTexture(GL_TEXTURE_2D, surface->texture);
>     > +        glPixelStorei(GL_UNPACK_ROW_LENGTH_EXT,
>     > +                      surface_stride(surface)
>     > +                      / surface_bytes_per_pixel(surface));
>     > +        glTexSubImage2D(GL_TEXTURE_2D, 0,
>     > +                        x, y, w, h,
>     > +                        surface->glformat, surface->gltype,
>     > +                        data + surface_stride(surface) * y
>     > +                        + surface_bytes_per_pixel(surface) * x);
>     > +    }
>     >  }
>     > 
>     >  void surface_gl_render_texture(QemuGLShader *gls,
>     >
> 

Reply via email to