Subject: 28.0.50; X-widget: assertion '!widget->priv->alloc_needed' failed

From: Maximiliano Sandoval <[email-masked]>
Date: Fri, 16 Oct 2020 11:24:12 +0000

When opening a file using xwidget I get an error

```
(emacs:150587): Gtk-CRITICAL **: 12:12:04.741: gtk_widget_draw: assertion '!widget->priv->alloc_needed' failed

(emacs:150587): Gtk-CRITICAL **: 12:12:21.983: gtk_widget_draw: assertion '!widget->priv->alloc_needed' failed

(emacs:151415): GLib-GObject-WARNING **: 12:18:44.591: instance with invalid (NULL) class pointer

(emacs:151415): GLib-GObject-CRITICAL **: 12:18:44.591: g_signal_handlers_disconnect_matched: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
```

## How to reproduce:

As in a previous bug,

- Create a file with contents:

```
<head><meta charset="UTF-8"></head>
<p><strong>From</strong>: [email-masked]</br><strong>To</strong>: [email-masked]</br><strong>Date</strong>: Mon 12 Oct 2020 10:39:34 PM CEST</br><strong>Subject</strong>: [Fedora Update] [comment] toolbox-0.0.96-1.fc33</p><pre>
The following comment has been added to the toolbox-0.0.96-1.fc33 update:

bodhi - 2020-10-12 20:39:34.343089 (karma: 0)
rishi edited this update.

To reply to this comment, please visit the URL at the bottom of this mail

================================================================================
     FEDORA-2020-12c4232ccb
================================================================================
    Release: Fedora 33
     Status: testing
       Type: bugfix
   Severity: high
      Karma: 4
    Request: stable
      Notes: * Don't break GNU Readline's ctrl-p shortcut * Enable system tests
           : on Fedora 33 * Fix containers with missing `/media`
           : possibly due to a failed RPM transaction * Give access
           : to the udev database * Unbreak X11 applications with
           : GNOME 3.38 * Update default release to 31 for non-
           : Fedora hosts
  Submitter: rishi
  Submitted: 2020-10-02 13:56:36.076520
   Comments: bodhi - 2020-10-12 20:39:34.343089 (karma 0)
             rishi edited this update.
             Fixes issues with x11, no notable regressions.
             bodhi - 2020-10-07 14:20:29.828510 (karma 0)
             This update has been submitted for stable by bodhi.
             pnemade - 2020-10-07 14:20:29.375296 (karma 1)
             I can run x11 applications now. Rest usage of toolbox
             looks fine.
             cairo - 2020-10-02 22:57:21.043782 (karma 1)
             bodhi - 2020-10-02 22:20:59.046677 (karma 0)
             This update can be pushed to stable now if the
             maintainer wishes
             bodhi - 2020-10-02 22:18:06.993838 (karma 0)
             This update has been pushed to testing.
             feborges - 2020-10-02 14:34:52.612994 (karma 1)
             After commenting out `default_sysctls = ...` from
             /usr/share/containers/containers.conf I was able to
             test and verify that this update works. I was pointed
             out to
             https://github.com/containers/podman/issues/7766  I am
             able to run x11 applications again! Ctrl + P also
             works as expected. /media is present, same for udev
             database.
             bodhi - 2020-10-02 14:24:41.395885 (karma 0)
             This update's test gating status has been changed to
             'ignored'.
             bodhi - 2020-10-02 13:56:36.568529 (karma 0)
             This update's test gating status has been changed to
             'waiting'.
             bodhi - 2020-10-02 13:56:36.499889 (karma 0)
             This update's test gating status has been changed to
             'ignored'.
             bodhi - 2020-10-02 13:56:36.193084 (karma 0)
             This update has been submitted for testing by rishi.

  https://bodhi.fedoraproject.org/updates/FEDORA-2020-12c4232ccb

</pre>
```

In `~/some.html`.

- Run in `emacs -Q` the function `(xwidget-webkit-browse-url "file://home/USERNAME/some.html") or whatever is the complete path of the file.` At this point two (or maybe four?) of the errors should appear on the terminal.

- Open the buffer selection buffer via `C-x C-b` and click the xwidget buffer in order to get the other two errors.

For additional info and screencasts see https://github.com/masm11/emacs/issues/71 and https://github.com/masm11/emacs/issues/72.

This was reproduced using the latest commit of Emacs master.

--
Maximiliano Sandoval R.