diff --git a/evolution-fix-javascript-code.patch b/evolution-fix-javascript-code.patch new file mode 100644 index 0000000..b843cee --- /dev/null +++ b/evolution-fix-javascript-code.patch @@ -0,0 +1,90 @@ +From 811a6df1f990855e49ecc0ba7b1a7f7a5ec251e6 Mon Sep 17 00:00:00 2001 +From: Milan Crha +Date: Fri, 29 Aug 2025 07:42:10 +0200 +Subject: [PATCH] I#3124 - JavaScript: Correct dictionary objects creation + (WebKitGTK 2.49.4) + +The arrays do not have named indexes, though it worked only by a chance +with the previous WebKitGTK versions. Correct how the objects are created +to follow the standard. + +Closes https://gitlab.gnome.org/GNOME/evolution/-/issues/3124 +--- + data/webkit/e-editor.js | 10 +++++----- + data/webkit/e-web-view.js | 4 ++-- + 2 files changed, 7 insertions(+), 7 deletions(-) + +diff --git a/data/webkit/e-editor.js b/data/webkit/e-editor.js +index c4e643d9ea..340ff54643 100644 +--- a/data/webkit/e-editor.js ++++ b/data/webkit/e-editor.js +@@ -4409,7 +4409,7 @@ EvoEditor.LinkGetProperties = function() + var res = null, anchor = EvoEditor.getParentElement("A", null, false); + + if (anchor) { +- res = []; ++ res = {}; + res["href"] = anchor.hasAttribute("href") ? anchor.getAttribute("href") : ""; + res["text"] = anchor.innerText; + res["name"] = anchor.name; +@@ -4419,7 +4419,7 @@ EvoEditor.LinkGetProperties = function() + range = document.getSelection().getRangeAt(0); + + if (range) { +- res = []; ++ res = {}; + res["text"] = range.toString(); + } + } +@@ -5513,7 +5513,7 @@ EvoEditor.InsertSignature = function(content, isHTML, canRepositionCaret, uid, f + EvoUndoRedo.StopRecord(EvoUndoRedo.RECORD_KIND_GROUP, "InsertSignature"); + } + +- var res = []; ++ var res = {}; + + res["fromMessage"] = fromMessage; + res["checkChanged"] = checkChanged; +@@ -6722,7 +6722,7 @@ EvoEditor.onContextMenu = function(event) + if (document.getSelection().isCollapsed) + nodeFlags |= EvoEditor.E_CONTENT_EDITOR_NODE_IS_TEXT_COLLAPSED; + +- res = []; ++ res = {}; + + res["nodeFlags"] = nodeFlags; + res["caretWord"] = EvoEditor.GetCaretWord(); +@@ -6743,7 +6743,7 @@ document.onselectionchange = function() { + EvoEditor.maybeUpdateFormattingState(EvoEditor.forceFormatStateUpdate ? EvoEditor.FORCE_YES : EvoEditor.FORCE_MAYBE); + EvoEditor.forceFormatStateUpdate = false; + +- var sel = document.getSelection(), args = []; ++ var sel = document.getSelection(), args = {}; + + args["isCollapsed"] = sel.isCollapsed; + +diff --git a/data/webkit/e-web-view.js b/data/webkit/e-web-view.js +index 591ee4f20e..b83899ba32 100644 +--- a/data/webkit/e-web-view.js ++++ b/data/webkit/e-web-view.js +@@ -399,7 +399,7 @@ Evo.elementClicked = function(elem) + dom_window = parent_dom_window; + } + +- var res = []; ++ var res = {}; + + res["iframe-id"] = parent_iframe_id; + res["elem-id"] = elem.id; +@@ -617,7 +617,7 @@ Evo.GetElementFromPoint = function(xx, yy) + if (!elem) + return null; + +- var res = [], iframe; ++ var res = {}, iframe; + + iframe = elem.ownerDocument.defaultView.frameElement; + +-- +2.51.0 + diff --git a/evolution.changes b/evolution.changes index d3d353c..ac47eea 100644 --- a/evolution.changes +++ b/evolution.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Tue Oct 28 19:40:36 UTC 2025 - Michael Gorse + +- Add evolution-fix-javascript-code.patch: Fix JavaScript + dictionary objects creation. Needed for WebKitGTK >= 2.50 + (bsc#1252722 glgo#GNOME/evolution#3124). + ------------------------------------------------------------------- Tue Jun 24 03:39:39 UTC 2025 - Alynx Zhou diff --git a/evolution.spec b/evolution.spec index d8a3b17..8c994ca 100644 --- a/evolution.spec +++ b/evolution.spec @@ -31,6 +31,8 @@ URL: https://wiki.gnome.org/Apps/Evolution/ Source0: %{name}-%{version}.tar.zst # PATCH-FIX-UPSTREAM evolution-fix-gtk-call-from-other-thread.patch bsc#1243898 alynx.zhou@suse.com -- Fix crash because of GTK call from other thread Patch0: evolution-fix-gtk-call-from-other-thread.patch +# PATCH-FIX-UPSTREAM evolution-fix-javascript-code.patch bsc#1252722 mgorse@suse.com -- fix JavaScript dictionary objects creation. +Patch1: evolution-fix-javascript-code.patch BuildRequires: bison BuildRequires: bogofilter