diff --git a/50052eaa91c3c750c51c245799e3747495feeece.patch b/50052eaa91c3c750c51c245799e3747495feeece.patch new file mode 100644 index 0000000..dfc4a4e --- /dev/null +++ b/50052eaa91c3c750c51c245799e3747495feeece.patch @@ -0,0 +1,63 @@ +From 50052eaa91c3c750c51c245799e3747495feeece Mon Sep 17 00:00:00 2001 +From: Victor Kareh +Date: Thu, 14 May 2026 21:56:38 -0400 +Subject: [PATCH] ev-application: Quote user-supplied strings in ev_spawn + command line + +When spawning a new xreader instance for cross-document links, the +destination and search parameters from the document were interpolated +directly into the command line without shell quoting. Values containing +spaces or special characters could be split into separate arguments by +the shell parser, potentially being interpreted as unintended flags by +the child process. + +Apply shell quoting to page label, named destination, and search string +values before appending them to the command line. +--- + shell/ev-application.c | 20 +++++++++++++------- + 1 file changed, 13 insertions(+), 7 deletions(-) + +diff --git a/shell/ev-application.c b/shell/ev-application.c +index a430f9e0..148cfaf8 100644 +--- a/shell/ev-application.c ++++ b/shell/ev-application.c +@@ -235,18 +235,22 @@ ev_spawn (const char *uri, + /* Page label or index */ + if (dest) { + switch (ev_link_dest_get_dest_type (dest)) { +- case EV_LINK_DEST_TYPE_PAGE_LABEL: +- g_string_append_printf (cmd, " --page-label=%s", +- ev_link_dest_get_page_label (dest)); ++ case EV_LINK_DEST_TYPE_PAGE_LABEL: { ++ gchar *quoted = g_shell_quote (ev_link_dest_get_page_label (dest)); ++ g_string_append_printf (cmd, " --page-label=%s", quoted); ++ g_free (quoted); + break; ++ } + case EV_LINK_DEST_TYPE_PAGE: + g_string_append_printf (cmd, " --page-index=%d", + ev_link_dest_get_page (dest) + 1); + break; +- case EV_LINK_DEST_TYPE_NAMED: +- g_string_append_printf (cmd, " --named-dest=%s", +- ev_link_dest_get_named_dest (dest)); ++ case EV_LINK_DEST_TYPE_NAMED: { ++ gchar *quoted = g_shell_quote (ev_link_dest_get_named_dest (dest)); ++ g_string_append_printf (cmd, " --named-dest=%s", quoted); ++ g_free (quoted); + break; ++ } + default: + break; + } +@@ -254,7 +258,9 @@ ev_spawn (const char *uri, + + /* Find string */ + if (search_string) { +- g_string_append_printf (cmd, " --find=%s", search_string); ++ gchar *quoted = g_shell_quote (search_string); ++ g_string_append_printf (cmd, " --find=%s", quoted); ++ g_free (quoted); + } + + /* Mode */ diff --git a/sources b/sources index 9481595..faf6ce1 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (xreader-4.6.4.tar.gz) = 96b0593eb4869552c1df5ef1f545773cc242cfa3835106b5fd692d444c2e9385f0ee9d59f9d91d937c7275aa4967cc39a37d79e8570c264b0425f691c2f028d2 +SHA512 (xreader-4.2.6.tar.gz) = 7d96c5cac2d5593f72557cb2b70c2a191cd40d9ae01ae697a15c997adf63bbc70bd448a853c14541b209841e192679bac322476b412d27faa65992e9ed2da26b diff --git a/xreader.spec b/xreader.spec index ba5a95c..671898a 100644 --- a/xreader.spec +++ b/xreader.spec @@ -2,20 +2,23 @@ %global __provides_exclude_from ^%{_libdir}/%{name}/.*$ Name: xreader -Version: 4.6.4 -Release: 3%{?dist} +Version: 4.2.6 +Release: 2%{?dist} Summary: Simple document viewer # Automatically converted from old format: GPLv2+ - review is highly recommended. License: GPL-2.0-or-later URL: https://github.com/linuxmint/%{name} Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz +Patch0: %{url}/commit/50052eaa91c3c750c51c245799e3747495feeece.patch ExcludeArch: %{ix86} BuildRequires: cmake BuildRequires: gcc-c++ BuildRequires: meson +BuildRequires: mathjax +BuildRequires: gtk-doc BuildRequires: intltool BuildRequires: itstool BuildRequires: libappstream-glib @@ -40,15 +43,14 @@ BuildRequires: pkgconfig(zlib) BuildRequires: python3-packaging BuildRequires: texlive BuildRequires: t1lib-devel +BuildRequires: yelp-tools Requires: shared-mime-info%{?_isa} Requires: gsettings-desktop-schemas%{?_isa} Requires: xapps%{?_isa} -Requires: xapp-symbolic-icons Requires: %{name}-libs%{?_isa} = %{version}-%{release} Recommends: yelp%{?_isa} -Recommends: %{name}-thumbnailer%{?_isa} = %{version}-%{release} %description X-Apps Document Reader is a document viewer capable of displaying @@ -168,33 +170,8 @@ This package adds configuration to use %{name} as a thumbnailer. %doc %{_datadir}/doc/%{name}* %changelog -* Fri Jul 17 2026 Fedora Release Engineering - 4.6.4-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild - -* Tue May 19 2026 Leigh Scott - 4.6.4-2 -- Add requires xapp-symbolic-icons - -* Mon May 18 2026 Leigh Scott - 4.6.4-1 -- Update to 4.6.4 - -* Sat Jan 17 2026 Fedora Release Engineering - 4.6.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild - -* Fri Jan 09 2026 Leigh Scott - 4.6.3-1 -- Update to 4.6.3 - -* Sat Dec 13 2025 Leigh Scott - 4.6.1-1 -- Update to 4.6.1 - -* Fri Dec 12 2025 Leigh Scott - 4.6.0-1 -- Update to 4.6.0 - -* Mon Sep 15 2025 Leigh Scott - 4.4.0-1 -- Update to 4.4.0 -- Add recommends xreader-thumbnailer to main package - -* Fri Jul 25 2025 Fedora Release Engineering - 4.2.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild +* Tue May 19 2026 Leigh Scott - 4.2.6-2 +- Add patch * Mon May 26 2025 Leigh Scott - 4.2.6-1 - Update to 4.2.6