[librsvg: 87/90] (#295): Ensure the initial viewport fits into temporary surfaces for compositing



commit 324687ad590706bd69ee2851437cede914a68209
Author: Federico Mena Quintero <federico gnome org>
Date:   Tue Mar 26 09:06:45 2019 -0600

    (#295): Ensure the initial viewport fits into temporary surfaces for compositing
    
    Fixes https://gitlab.gnome.org/GNOME/librsvg/issues/295

 rsvg_internals/src/drawing_ctx.rs | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)
---
diff --git a/rsvg_internals/src/drawing_ctx.rs b/rsvg_internals/src/drawing_ctx.rs
index acf8ecce..68e781d0 100644
--- a/rsvg_internals/src/drawing_ctx.rs
+++ b/rsvg_internals/src/drawing_ctx.rs
@@ -217,11 +217,10 @@ impl DrawingCtx {
     }
 
     fn size_for_temporary_surface(&self) -> (i32, i32) {
-        // This truncation may mean that we clip off the rightmost/bottommost row of pixels.
-        // See https://gitlab.gnome.org/GNOME/librsvg/issues/295
-
-        let width = self.rect.width as i32;
-        let height = self.rect.height as i32;
+        // We need a size in whole pixels, so use ceil() to ensure the whole viewport fits
+        // into the temporary surface.
+        let width = self.rect.width.ceil() as i32;
+        let height = self.rect.height.ceil() as i32;
 
         (width, height)
     }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]