PR 1455
authorKartikaya Gupta <kgupta@mozilla.com>
Thu, 06 Jul 2017 10:21:02 -0400
changeset 1177679 b79323ee0c9b765f79a075dbcdde70b385d8dde4
parent 1177678 2bab2033f5461e114d32e5fb3b57a585d736b80a
child 1177680 df1562689841ef9aed49160bf132205cb7515b20
push id202976
push userkgupta@mozilla.com
push dateThu, 06 Jul 2017 14:21:29 +0000
treeherdertry@df1562689841 [default view] [failures only]
milestone56.0a1
PR 1455 MozReview-Commit-ID: IXrEN1lWc6n
gfx/webrender/res/ps_text_run.vs.glsl
--- a/gfx/webrender/res/ps_text_run.vs.glsl
+++ b/gfx/webrender/res/ps_text_run.vs.glsl
@@ -9,35 +9,36 @@ void main(void) {
 
     int glyph_index = prim.user_data0;
     int resource_address = prim.user_data2;
     Glyph glyph = fetch_glyph(prim.specific_prim_address, glyph_index);
     GlyphResource res = fetch_glyph_resource(resource_address);
 
     vec2 local_pos = glyph.offset + vec2(res.offset.x, -res.offset.y) / uDevicePixelRatio;
 
+    RectWithSize snap_rect = RectWithSize(prim.local_rect.p0, vec2(0.0));
     RectWithSize local_rect = RectWithSize(local_pos,
                                            (res.uv_rect.zw - res.uv_rect.xy) / uDevicePixelRatio);
 
 #ifdef WR_FEATURE_TRANSFORM
     TransformVertexInfo vi = write_transform_vertex(local_rect,
                                                     prim.local_clip_rect,
                                                     prim.z,
                                                     prim.layer,
                                                     prim.task,
-                                                    prim.local_rect);
+                                                    snap_rect);
     vLocalPos = vi.local_pos;
     vec2 f = (vi.local_pos.xy / vi.local_pos.z - local_rect.p0) / local_rect.size;
 #else
     VertexInfo vi = write_vertex(local_rect,
                                  prim.local_clip_rect,
                                  prim.z,
                                  prim.layer,
                                  prim.task,
-                                 prim.local_rect);
+                                 snap_rect);
     vec2 f = (vi.local_pos - local_rect.p0) / local_rect.size;
 #endif
 
     write_clip(vi.screen_pos, prim.clip_area);
 
     vec2 texture_size = vec2(textureSize(sColor0, 0));
     vec2 st0 = res.uv_rect.xy / texture_size;
     vec2 st1 = res.uv_rect.zw / texture_size;