Update to 2.46.1
This commit is contained in:
parent
a29cb4bffd
commit
5d0633369f
1
.gitignore
vendored
1
.gitignore
vendored
@ -57,3 +57,4 @@ librsvg-2.31.0.tar.bz2
|
|||||||
/librsvg-2.45.91.tar.xz
|
/librsvg-2.45.91.tar.xz
|
||||||
/librsvg-2.45.92.tar.xz
|
/librsvg-2.45.92.tar.xz
|
||||||
/librsvg-2.46.0.tar.xz
|
/librsvg-2.46.0.tar.xz
|
||||||
|
/librsvg-2.46.1.tar.xz
|
||||||
|
@ -1,93 +0,0 @@
|
|||||||
From ae7ecfa0846b40d75f5b20c4f122df9a0b78ee4f Mon Sep 17 00:00:00 2001
|
|
||||||
From: Federico Mena Quintero <federico@gnome.org>
|
|
||||||
Date: Thu, 19 Sep 2019 15:25:03 -0500
|
|
||||||
Subject: [PATCH] (#506): Fix empty patterns which reference a fallback pattern
|
|
||||||
with children
|
|
||||||
|
|
||||||
When we do draw_ctx.acquired_nodes().get_node_of_type() to acquire a
|
|
||||||
pattern, or its fallback, we need to set the NodePattern.node to the
|
|
||||||
corresponding node weakref.
|
|
||||||
|
|
||||||
This was being done correctly at the beginning of the implementation
|
|
||||||
of resolve(), as of commit 03cbbe96, where the sequence is this:
|
|
||||||
|
|
||||||
DrawingCtx.set_source_paint_server()
|
|
||||||
paint_server = acquired_nodes.get_node()
|
|
||||||
<paint_server as NodePattern>.resolve_fallbacks_and_set_pattern()
|
|
||||||
self.resolve(node, ...)
|
|
||||||
*self.node.borrow_mut() = Some(node.downgrade());
|
|
||||||
|
|
||||||
However, this setting of self.node (where self is a NodePattern) to
|
|
||||||
the corresponding weakref was missing in the "while" loop in
|
|
||||||
NodePattern.resolve(), where it acquires the fallback pattern - the
|
|
||||||
fallback's NodePattern also needs its .node to be set to its node's
|
|
||||||
weakref.
|
|
||||||
|
|
||||||
We'll clean this up at some point.
|
|
||||||
|
|
||||||
Fixes https://gitlab.gnome.org/GNOME/librsvg/issues/506
|
|
||||||
---
|
|
||||||
rsvg_internals/src/pattern.rs | 6 +++++-
|
|
||||||
.../bugs/506-pattern-fallback-ref.png | Bin 0 -> 486 bytes
|
|
||||||
.../reftests/bugs/506-pattern-fallback.svg | 19 ++++++++++++++++++
|
|
||||||
3 files changed, 24 insertions(+), 1 deletion(-)
|
|
||||||
create mode 100644 tests/fixtures/reftests/bugs/506-pattern-fallback-ref.png
|
|
||||||
create mode 100644 tests/fixtures/reftests/bugs/506-pattern-fallback.svg
|
|
||||||
|
|
||||||
diff --git a/rsvg_internals/src/pattern.rs b/rsvg_internals/src/pattern.rs
|
|
||||||
index 9d943b1d..291d81d3 100644
|
|
||||||
--- a/rsvg_internals/src/pattern.rs
|
|
||||||
+++ b/rsvg_internals/src/pattern.rs
|
|
||||||
@@ -164,7 +164,11 @@ impl PaintSource for NodePattern {
|
|
||||||
}
|
|
||||||
|
|
||||||
let node_data = a_node.borrow();
|
|
||||||
- result.resolve_from_fallback(&node_data.get_impl::<NodePattern>());
|
|
||||||
+
|
|
||||||
+ let fallback_pattern = node_data.get_impl::<NodePattern>();
|
|
||||||
+ *fallback_pattern.node.borrow_mut() = Some(a_node.downgrade());
|
|
||||||
+
|
|
||||||
+ result.resolve_from_fallback(fallback_pattern);
|
|
||||||
|
|
||||||
stack.push(a_node);
|
|
||||||
} else {
|
|
||||||
diff --git a/tests/fixtures/reftests/bugs/506-pattern-fallback-ref.png b/tests/fixtures/reftests/bugs/506-pattern-fallback-ref.png
|
|
||||||
new file mode 100644
|
|
||||||
index 0000000000000000000000000000000000000000..b9fec4e90e652595043b4dc7d6f9a2e915c3b9f8
|
|
||||||
GIT binary patch
|
|
||||||
literal 486
|
|
||||||
zcmeAS@N?(olHy`uVBq!ia0y~yU<5K5893O0R7}x|G$6&6<n8Xl@E-&h>|H(?C_UTL
|
|
||||||
z#WAE}&f6;+c^eD_SR7~nt2VPVd@-?XSrfP4ZZV)9T7&$XmzgUpUi<j}xbkhM{my0V
|
|
||||||
m48<%AhXyyIb(jFnf52+augz4zbVjohWSgg}pUXO@geCxCb5Z&L
|
|
||||||
|
|
||||||
literal 0
|
|
||||||
HcmV?d00001
|
|
||||||
|
|
||||||
diff --git a/tests/fixtures/reftests/bugs/506-pattern-fallback.svg b/tests/fixtures/reftests/bugs/506-pattern-fallback.svg
|
|
||||||
new file mode 100644
|
|
||||||
index 00000000..64f71050
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/tests/fixtures/reftests/bugs/506-pattern-fallback.svg
|
|
||||||
@@ -0,0 +1,19 @@
|
|
||||||
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
||||||
+<svg xmlns="http://www.w3.org/2000/svg"
|
|
||||||
+ xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
||||||
+ version="1.1"
|
|
||||||
+ width="256"
|
|
||||||
+ height="256"
|
|
||||||
+ viewBox="0 0 256 256">
|
|
||||||
+ <defs>
|
|
||||||
+ <pattern id="pattern1" xlink:href="#pattern2"/>
|
|
||||||
+ <pattern id="pattern2" patternUnits="userSpaceOnUse" width="1" height="1">
|
|
||||||
+ <image width="1" height="1" preserveAspectRatio="none"
|
|
||||||
+ xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAADElEQVQI12Ng+M8AAAICAQCqKp4n
|
|
||||||
+AAAAAElFTkSuQmCC"
|
|
||||||
+ x="0"
|
|
||||||
+ y="0"/>
|
|
||||||
+ </pattern>
|
|
||||||
+ </defs>
|
|
||||||
+ <rect x="100" y="100" width="56" height="56" style="fill:url(#pattern1);"/>
|
|
||||||
+</svg>
|
|
||||||
--
|
|
||||||
2.23.0
|
|
||||||
|
|
@ -12,14 +12,12 @@
|
|||||||
|
|
||||||
Name: librsvg2
|
Name: librsvg2
|
||||||
Summary: An SVG library based on cairo
|
Summary: An SVG library based on cairo
|
||||||
Version: 2.46.0
|
Version: 2.46.1
|
||||||
Release: 2%{?dist}
|
Release: 1%{?dist}
|
||||||
|
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
URL: https://wiki.gnome.org/Projects/LibRsvg
|
URL: https://wiki.gnome.org/Projects/LibRsvg
|
||||||
Source0: https://download.gnome.org/sources/librsvg/2.46/librsvg-%{version}.tar.xz
|
Source0: https://download.gnome.org/sources/librsvg/2.46/librsvg-%{version}.tar.xz
|
||||||
# Backported from upstream
|
|
||||||
Patch0: 0001-506-Fix-empty-patterns-which-reference-a-fallback-pa.patch
|
|
||||||
|
|
||||||
BuildRequires: chrpath
|
BuildRequires: chrpath
|
||||||
BuildRequires: gcc
|
BuildRequires: gcc
|
||||||
@ -165,6 +163,9 @@ rm -vrf %{buildroot}%{_datadir}/doc
|
|||||||
%{_mandir}/man1/rsvg-convert.1*
|
%{_mandir}/man1/rsvg-convert.1*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Oct 07 2019 Kalev Lember <klember@redhat.com> - 2.46.1-1
|
||||||
|
- Update to 2.46.1
|
||||||
|
|
||||||
* Fri Sep 20 2019 Kalev Lember <klember@redhat.com> - 2.46.0-2
|
* Fri Sep 20 2019 Kalev Lember <klember@redhat.com> - 2.46.0-2
|
||||||
- Backport a patch to fix svg rendering in gnome-initial-setup (#1753183)
|
- Backport a patch to fix svg rendering in gnome-initial-setup (#1753183)
|
||||||
|
|
||||||
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (librsvg-2.46.0.tar.xz) = baa6c4490b6485c30f570408e70fbd3ce2d3b9584c4f06e5f6afdf7a1b7171f5af13e01e18476a392c9a2b6b0bf429fac2c04daa6f50d5e413f53babcdc4adbc
|
SHA512 (librsvg-2.46.1.tar.xz) = f50454338d8fb3587dc559cef6e4f0122bbd3b5678f22ff00747622727bb98b4c7fd9aec856ad88b51215e4769d091175736d3843ae9086d245db1a2a9ff5bd3
|
||||||
|
Loading…
Reference in New Issue
Block a user