[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#70352: Fwd: Re: bug#70352: 29.3.50; emacs-pgtk: possible leak of vir
From: |
Björn Bidar |
Subject: |
bug#70352: Fwd: Re: bug#70352: 29.3.50; emacs-pgtk: possible leak of virtual memory |
Date: |
Fri, 10 May 2024 23:34:55 +0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Po Lu via "Bug reports for GNU Emacs, the Swiss army knife of text
editors" <bug-gnu-emacs@gnu.org> writes:
> Yang Yingchao <yang.yingchao@qq.com> writes:
>
>> Could this be an issue with gtk+? I made some changes to gtk+-3.24.41,
>> and it seems like the issue has disappeared...
>
> I don't understand. Aren't you building with GTK 4.x?
>
>> ,----
>> | diff -urNa gtk+-3.24.41.orig/gdk/wayland/gdkwindow-wayland.c
>> gtk+-3.24.41/gdk/wayland/gdkwindow-wayland.c
>> | --- gtk+-3.24.41.orig/gdk/wayland/gdkwindow-wayland.c 2024-01-24
>> 09:14:34.000000000 +0800
>> | +++ gtk+-3.24.41/gdk/wayland/gdkwindow-wayland.c 2024-04-29
>> 16:41:00.691373426 +0800
>> | @@ -952,6 +952,11 @@
>> | /* Release came in, we haven't done any interim updates, so we can just
>> use
>> | * the old committed buffer again.
>> | */
>> | +
>> | + if (impl->staging_cairo_surface) {
>> | + g_clear_pointer (&impl->staging_cairo_surface, cairo_surface_destroy);
>> | + }
>> | +
>> | impl->staging_cairo_surface = g_steal_pointer
>> (&impl->committed_cairo_surface);
>> | }
>> `----
>>
>> Actually, I do not understand the logic of the function
>> `buffer_release_callback()', but when debugging this issue with gdb, I
>> noticed that the `impl->staging_cairo_surface' which was created via
>> `_gdk_wayland_display_create_shm_surface' was replaced by
>> `impl->committed_cairo_surface' without being released first.
>
> I'm afraid the GDK Wayland backend is outside my line of country.
> Perhaps you ought to take this up with their developers, but be prepared
> for weeks of frustration as they presume to tell you how your program
> should bend over backwards to accommodate their misdesigns.
Doesn't seem to go that bad this time:
https://gitlab.gnome.org/GNOME/gtk/-/issues/6675
Luckily mentioning Emacs did not cause any issues.