unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#34528: Icecat is crashing on search
@ 2019-02-18 16:01 Joshua Branson
  2019-03-30  3:47 ` bug#34528: Gtk upstream bug #1280 causes crashes in IceCat and Emacs Mark H Weaver
  0 siblings, 1 reply; 5+ messages in thread
From: Joshua Branson @ 2019-02-18 16:01 UTC (permalink / raw)
  To: 34528


Hello!

So I recently ran "guix pull && guix package -u && guix system
reconfigure awesome.scm".

And now Icecat hardly use able.

#+BEGIN_SRC bash
guix --version
#+END_SRC

guix (GNU Guix) af5ead8b346f11105c964726101618116af13426
Copyright (C) 2019 the Guix authors
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.


I am using a Macbook 7,1.

I started Icecat from a terminal.  When Icecat opened, I tried to search
for "hello" in the omnibar.  Icecat immediately crashed.


#+BEGIN_SRC bash
icecat --version
#+END_SRC

GNU IceCat 60.5.1


Here is a copy of what the terminal said:


joshua@dobby ~$ icecat
1550505405166	addons.webextension.{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}	WARN	Loading extension '{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}': Reading manifest: Error processing background.persistent: Event pages are not currently supported. This will run as a persistent background page.
1550505405178	addons.webextension.{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}	WARN	Loading extension '{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}': Reading manifest: Error processing storage: An unexpected property was found in the WebExtension manifest.
1550505406402	addons.webextension.{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}	WARN	Please specify whether you want browser_style or not in your browser_action options.

(icecat:3394): Gtk-WARNING **: 15:56:46.419: Could not find the icon 'dialog-warning'. The 'hicolor' theme
was not found either, perhaps you need to install it.
You can get a copy from:
	http://icon-theme.freedesktop.org/releases

(icecat:3394): Gtk-WARNING **: 15:56:46.420: Error loading theme icon 'dialog-warning' for stock: Icon 'dialog-warning' not present in theme Adwaita
JavaScript error: resource://activity-stream/lib/Screenshots.jsm, line 102: TypeError: cache is undefined
JavaScript error: resource://activity-stream/lib/Screenshots.jsm, line 102: TypeError: cache is undefined
JavaScript warning: moz-extension://54be0cf6-40e6-4986-a89b-b0498cedcd5c/lib/adblockplus.js, line 0: Successfully compiled asm.js code (total compilation time 1ms; not stored in cache (too small to benefit))
1550505407804	addons.webextension.tortm-browser-button@jeremybenthum	WARN	Please specify whether you want browser_style or not in your browser_action options.
1550505411872	addons.webextension.https-everywhere@eff.org	WARN	Please specify whether you want browser_style or not in your browser_action options.

(icecat:3394): Gdk-ERROR **: 15:56:53.656: The program 'icecat' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadMatch (invalid parameter attributes)'.
  (Details: serial 1635 error_code 8 request_code 2 (core protocol) minor_code 0)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the GDK_SYNCHRONIZE environment
   variable to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)
Crash Annotation GraphicsCriticalError: |[C0][GFX1-]: Receive IPC close with reason=AbnormalShutdown (t=2.72252) [GFX1-]: Receive IPC close with reason=AbnormalShutdown
[Child 3489, Chrome_ChildThread] WARNING: pipe error (3): Connection reset by peer: file /tmp/guix-build-icecat-60.5.1-guix1.drv-0/icecat-60.5.1-guix1/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 342
Crash Annotation GraphicsCriticalError: |[C0][GFX1-]: Receive IPC close with reason=AbnormalShutdown (t=2.04331) [GFX1-]: Receive IPC close with reason=AbnormalShutdown
[Child 3514, Chrome_ChildThread] WARNING: pipe error (3): Connection reset by peer: file /tmp/guix-build-icecat-60.5.1-guix1.drv-0/icecat-60.5.1-guix1/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 342
Trace/breakpoint trap



Thanks!

P.S.  It is nice that I am just able to --roll-back and have a working
IceCat again!

--
Joshua Branson
Sent from Emacs and Gnus

^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#34528: Gtk upstream bug #1280 causes crashes in IceCat and Emacs
  2019-02-18 16:01 bug#34528: Icecat is crashing on search Joshua Branson
@ 2019-03-30  3:47 ` Mark H Weaver
  2019-03-30  4:56   ` bug#34454: " Carlo Zancanaro
  2019-03-31 10:07   ` Ludovic Courtès
  0 siblings, 2 replies; 5+ messages in thread
From: Mark H Weaver @ 2019-03-30  3:47 UTC (permalink / raw)
  To: 34454, 34658, 34528; +Cc: Joshua Branson, Bradley Haggerty

[-- Attachment #1: Type: text/plain, Size: 1055 bytes --]

merge 34454 34658 34528
retitle 34454 Gtk upstream bug #1280 causes crashes in IceCat and Emacs
thanks

Hello all,

I looked into this, and I believe all of these bugs are caused by Gtk
upstream bug #1280:

  https://gitlab.gnome.org/GNOME/gtk/issues/1280

which is apparently fixed by the following upstream commit:

  https://gitlab.gnome.org/GNOME/gtk/commit/e3a1593a0984cc0156ec1892a46af8f256a64878

Here's another upstream bug report that's more obviously related to
this, and upstream decided it was a duplicate with #1280:

  https://gitlab.gnome.org/GNOME/gtk/issues/1523

Also, here's the same bug reported for NixOS and Arch:

  https://github.com/NixOS/nixpkgs/issues/53697
  https://bugs.archlinux.org/task/61050

I've attached a proposed patch to fix this in Guix.  I'm currently
testing the patch on my system to make sure it doesn't cause any
problems, although I cannot reproduce this bug on my own system.

If those affected by this issue would like to test this patch and report
back, that would be helpful.

     Regards,
       Mark



[-- Attachment #2: [PATCH] UNTESTED: gnu: gtk+: Add upstream fix for crashes in Emacs and IceCat --]
[-- Type: text/x-patch, Size: 4338 bytes --]

From 5a11003732688c0fbbfdc831774f58ff6fe20a0b Mon Sep 17 00:00:00 2001
From: Mark H Weaver <mhw@netris.org>
Date: Fri, 29 Mar 2019 23:28:45 -0400
Subject: [PATCH] UNTESTED: gnu: gtk+: Add upstream fix for crashes in Emacs
 and IceCat.

* gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gtk.scm (gtk+/fixed): New variable.
(gtk+)[replacement]: New field.
---
 gnu/local.mk                                  |  1 +
 gnu/packages/gtk.scm                          | 12 +++++++-
 .../gtk3-fix-deprecation-macro-use.patch      | 29 +++++++++++++++++++
 3 files changed, 41 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 18531d9a76..5639bc58d1 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -887,6 +887,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch	\
   %D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \
   %D%/packages/patches/gtk2-theme-paths.patch			\
+  %D%/packages/patches/gtk3-fix-deprecation-macro-use.patch	\
   %D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch	\
   %D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \
   %D%/packages/patches/gtkglext-disable-disable-deprecated.patch \
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index aab392758f..1d26aab963 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2014, 2015, 2017, 2018 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2014, 2015, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
@@ -694,6 +694,7 @@ application suites.")
    ;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in
    ;;       mate.scm will also need to be updated.
    (version "3.24.2")
+   (replacement gtk+/fixed)
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/" name "/"
@@ -787,6 +788,15 @@ application suites.")
            (variable "GUIX_GTK3_PATH")
            (files '("lib/gtk-3.0")))))))
 
+(define gtk+/fixed
+  (package
+    (inherit gtk+)
+    (source (origin
+              (inherit (package-source gtk+))
+              (patches
+               (cons (search-patch "gtk3-fix-deprecation-macro-use.patch")
+                     (origin-patches (package-source gtk+))))))))
+
 ;;;
 ;;; Guile bindings.
 ;;;
diff --git a/gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch b/gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch
new file mode 100644
index 0000000000..39cd4bd59a
--- /dev/null
+++ b/gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch
@@ -0,0 +1,29 @@
+Copied from <https://gitlab.gnome.org/GNOME/gtk/commit/e3a1593a>.
+Fixes upstream bug <https://gitlab.gnome.org/GNOME/gtk/issues/1280>,
+and hopefully also <https://bugs.gnu.org/34528>,
+<https://bugs.gnu.org/34454>, and <https://bugs.gnu.org/34658>.
+
+diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c
+index 97ada6d73919fba3dfe192dd66929e90bc7677bb..764e39495f7edb0c3efe41cca25b8bee4778887d 100644
+--- a/gdk/x11/gdkwindow-x11.c
++++ b/gdk/x11/gdkwindow-x11.c
+@@ -2985,6 +2985,7 @@ gdk_window_x11_set_background (GdkWindow      *window,
+   double r, g, b, a;
+   cairo_surface_t *surface;
+   cairo_matrix_t matrix;
++  cairo_pattern_t *parent_relative_pattern;
+ 
+   if (GDK_WINDOW_DESTROYED (window))
+     return;
+@@ -2997,8 +2998,10 @@ gdk_window_x11_set_background (GdkWindow      *window,
+     }
+ 
+ G_GNUC_BEGIN_IGNORE_DEPRECATIONS
+-  if (pattern == gdk_x11_get_parent_relative_pattern ())
++  parent_relative_pattern = gdk_x11_get_parent_relative_pattern ();
+ G_GNUC_END_IGNORE_DEPRECATIONS
++
++  if (pattern == parent_relative_pattern)
+     {
+       GdkWindow *parent;
+ 
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* bug#34454: Gtk upstream bug #1280 causes crashes in IceCat and Emacs
  2019-03-30  3:47 ` bug#34528: Gtk upstream bug #1280 causes crashes in IceCat and Emacs Mark H Weaver
@ 2019-03-30  4:56   ` Carlo Zancanaro
  2019-03-30  6:41     ` Mark H Weaver
  2019-03-31 10:07   ` Ludovic Courtès
  1 sibling, 1 reply; 5+ messages in thread
From: Carlo Zancanaro @ 2019-03-30  4:56 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: 34454, Joshua Branson, Bradley Haggerty, 34528, 34658

Hi Mark,

Thanks so much for taking a look at this!

On Sat, Mar 30 2019, Mark H Weaver wrote:
> If those affected by this issue would like to test this patch 
> and report back, that would be helpful.

I applied your patch to my local Guix, and everything is working 
fine again. I had been working around the problem by using 
emacs-no-x-toolkit, but with your patch I can use the normal emacs 
package again without issues.

Carlo

^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#34454: Gtk upstream bug #1280 causes crashes in IceCat and Emacs
  2019-03-30  4:56   ` bug#34454: " Carlo Zancanaro
@ 2019-03-30  6:41     ` Mark H Weaver
  0 siblings, 0 replies; 5+ messages in thread
From: Mark H Weaver @ 2019-03-30  6:41 UTC (permalink / raw)
  To: Carlo Zancanaro; +Cc: 34454, Joshua Branson, Bradley Haggerty

Hi Carlo,

Carlo Zancanaro <carlo@zancanaro.id.au> writes:

> Thanks so much for taking a look at this!
>
> On Sat, Mar 30 2019, Mark H Weaver wrote:
>> If those affected by this issue would like to test this patch and
>> report back, that would be helpful.
>
> I applied your patch to my local Guix, and everything is working fine
> again. I had been working around the problem by using
> emacs-no-x-toolkit, but with your patch I can use the normal emacs
> package again without issues.

Great, thanks for the report!  Based on this, I went ahead and pushed a
slightly improved patch, commit bc91562939ee002e84c95d13c907482b6d1e9339
on the master branch.

Joshua and Bradley: you should be able to simply "guix pull" and then
update your IceCat package, and hopefully the problem will be fixed.
Please let us know.

     Thanks!
       Mark

^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#34454: Gtk upstream bug #1280 causes crashes in IceCat and Emacs
  2019-03-30  3:47 ` bug#34528: Gtk upstream bug #1280 causes crashes in IceCat and Emacs Mark H Weaver
  2019-03-30  4:56   ` bug#34454: " Carlo Zancanaro
@ 2019-03-31 10:07   ` Ludovic Courtès
  1 sibling, 0 replies; 5+ messages in thread
From: Ludovic Courtès @ 2019-03-31 10:07 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: 34454, Joshua Branson, Bradley Haggerty, 34528, 34658

Hi Mark,

Mark H Weaver <mhw@netris.org> skribis:

> I looked into this, and I believe all of these bugs are caused by Gtk
> upstream bug #1280:
>
>   https://gitlab.gnome.org/GNOME/gtk/issues/1280
>
> which is apparently fixed by the following upstream commit:
>
>   https://gitlab.gnome.org/GNOME/gtk/commit/e3a1593a0984cc0156ec1892a46af8f256a64878

Woow, thanks for tracking it down and for pushing a fix!

Ludo’.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-03-31 10:09 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-18 16:01 bug#34528: Icecat is crashing on search Joshua Branson
2019-03-30  3:47 ` bug#34528: Gtk upstream bug #1280 causes crashes in IceCat and Emacs Mark H Weaver
2019-03-30  4:56   ` bug#34454: " Carlo Zancanaro
2019-03-30  6:41     ` Mark H Weaver
2019-03-31 10:07   ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).