[librsvg] marker.rs: Use the correct horizontal/vertical default size



commit d195b547080996b31a6fab84987ab710b9304a16
Author: Federico Mena Quintero <federico gnome org>
Date:   Mon Sep 4 13:09:01 2017 -0500

    marker.rs: Use the correct horizontal/vertical default size
    
    Otherwise LengthDir::Both will cause us to normalize the length incorrectly.

 rust/src/marker.rs |   16 ++++++++--------
 1 files changed, 8 insertions(+), 8 deletions(-)
---
diff --git a/rust/src/marker.rs b/rust/src/marker.rs
index c5282ff..52b0c39 100644
--- a/rust/src/marker.rs
+++ b/rust/src/marker.rs
@@ -95,17 +95,17 @@ impl NodeMarker {
             units:  Cell::new (MarkerUnits::default ()),
             ref_x:  Cell::new (RsvgLength::default ()),
             ref_y:  Cell::new (RsvgLength::default ()),
-            width:  Cell::new (NodeMarker::get_default_size ()),
-            height: Cell::new (NodeMarker::get_default_size ()),
+            width:  Cell::new (NodeMarker::get_default_size (LengthDir::Horizontal)),
+            height: Cell::new (NodeMarker::get_default_size (LengthDir::Vertical)),
             orient: Cell::new (MarkerOrient::default ()),
             aspect: Cell::new (AspectRatio::default ()),
             vbox:   Cell::new (None)
         }
     }
 
-    fn get_default_size () -> RsvgLength {
+    fn get_default_size (dir: LengthDir) -> RsvgLength {
         // per the spec
-        RsvgLength::parse ("3", LengthDir::Both).unwrap ()
+        RsvgLength::parse ("3", dir).unwrap ()
     }
 
     fn render (&self,
@@ -195,10 +195,10 @@ impl NodeTrait for NodeMarker {
         self.ref_x.set (property_bag::length_or_default (pbag, "refX", LengthDir::Horizontal)?);
         self.ref_y.set (property_bag::length_or_default (pbag, "refY", LengthDir::Vertical)?);
 
-        self.width.set (property_bag::lookup (pbag, "markerWidth").map_or (NodeMarker::get_default_size (),
-                                                                           |v| RsvgLength::parse (&v, 
LengthDir::Horizontal).unwrap_or (NodeMarker::get_default_size ())));
-        self.height.set (property_bag::lookup (pbag, "markerHeight").map_or (NodeMarker::get_default_size (),
-                                                                             |v| RsvgLength::parse (&v, 
LengthDir::Vertical).unwrap_or (NodeMarker::get_default_size ())));
+        self.width.set (property_bag::lookup (pbag, "markerWidth").map_or (NodeMarker::get_default_size 
(LengthDir::Horizontal),
+                                                                           |v| RsvgLength::parse (&v, 
LengthDir::Horizontal).unwrap_or (NodeMarker::get_default_size (LengthDir::Horizontal))));
+        self.height.set (property_bag::lookup (pbag, "markerHeight").map_or (NodeMarker::get_default_size 
(LengthDir::Vertical),
+                                                                             |v| RsvgLength::parse (&v, 
LengthDir::Vertical).unwrap_or (NodeMarker::get_default_size (LengthDir::Vertical))));
 
         self.orient.set (property_bag::parse_or_default (pbag, "orient")?);
         self.aspect.set (property_bag::parse_or_default (pbag, "preserveAspectRatio")?);


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