Eclipse (Flatpak) crashes with SIGABRT: GTK icon fallback aborts when the glycin SVG loader fails
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 35/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Cần làm rõ
- Mức độ hoạt động
- Sôi nổi
- Lĩnh vực
- desktop-dev, operating-systems
Hướng nghiên cứu
Bắt đầu từ điểm vào của GTK trong gtkiconhelper.c, ensure_surface_for_gicon(), và tái hiện sự cố crash của Eclipse Flatpak trong khi kiểm tra lỗi khởi động exit-101 của trình tải SVG glycin. So sánh các bản cài đặt Flatpak và bản native, sau đó xác nhận rằng vấn đề của trình tải đã được hiểu và biểu tượng fallback bị thiếu không còn khiến Eclipse bị abort nữa.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
The Flatpak build of Eclipse aborts (SIGABRT, core dumped) at random intervals
during normal UI interaction. The abort originates in GTK, not in the JVM:
GTK fails to load an icon, falls back to the Adwaita image-missing.svg
placeholder, and loading that fails too because the glycin SVG loader
subprocess exits immediately. ensure_surface_for_gicon() treats a failed
fallback as unrecoverable and calls g_assert(), which aborts the process.
Result: the whole IDE dies without warning, losing unsaved state, and any
server process launched from Eclipse is orphaned (keeps holding its ports).
Because virtually every Eclipse/SWT icon is an SVG, any application run
that hits a missing icon is a coin flip on survival.
Environment
- Eclipse IDE for Java Developers 2026-06 (4.40)
build: org.eclipse.epp.package.common_4.40.0.20260604-0652 - Installed as Flatpak: org.eclipse.Java
- Equinox launcher: org.eclipse.equinox.launcher_1.7.100.v20251111-0406
- SWT native: libswt-pi3-gtk-4973r12.so (GTK3 / -ws gtk)
- JRE: JustJ OpenJDK HotSpot 21.0.11 (v20260515-1531), bundled
- GTK: libgtk-3.so.0.2420.32
- GLib: libglib-2.0.so.0.8800.3
- glycin: libglycin-2.so.0, loader /usr/libexec/glycin-loaders/2+/glycin-svg
- WebKit2GTK: libwebkit2gtk-4.1.so.0.21.9
JavaScriptCore: libjavascriptcoregtk-4.1.so.0.10.13 - Arch: x86_64
Frequency
At least three crashes over roughly one week of normal use, with no
reproducible trigger identified. No correlation with a specific action,
view or dialog was observed.
Actual output (stderr, immediately before the abort)
(Eclipse:3): Gtk-WARNING **: Could not load a pixbuf from icon theme.
This may indicate that pixbuf loaders or the mime database could not be found.
**
Gtk:ERROR:../gtk/gtkiconhelper.c:495:ensure_surface_for_gicon: assertion failed
(error == NULL): Failed to load
/usr/share/icons/Adwaita/scalable/status/image-missing.svg:
Loader process exited early with status '101'
Command: env -i XDG_RUNTIME_DIR="/run/user/<uid>" "flatpak-spawn" "--sandbox"
"--watch-bus" "--directory=/" "--forward-fd=<n>" "prlimit" "--as=17012097024"
"/usr/libexec/glycin-loaders/2+/glycin-svg" "--dbus-fd" "<n>"
(gdk-pixbuf-error-quark, 0)
Bail out! Gtk:ERROR:../gtk/gtkiconhelper.c:495:ensure_surface_for_gicon: [...]
Note: exit status 101 is the default exit code of a Rust panic, and the glycin
loaders are written in Rust — the loader appears to panic on startup rather
than to fail gracefully.
Also seen earlier in the same session, likely related (broken icon/pixbuf
infrastructure inside the sandbox):
Gdk-Message: Unable to load left_ptr_watch from the cursor theme
** (process:<pid>): WARNING **: Locale not supported by C library.
Using the fallback 'C' locale.
Core dump
Signal 6 (ABRT). Crashing thread, abbreviated — offsets were identical across
all three crashes:
#0 libc.so.6 + 0x9c51c (pthread_kill)
#1 libc.so.6 + 0x422be (raise)
#2 libc.so.6 + 0x298ed (abort)
#3 libglib-2.0.so.0 + 0x250b8 (GLib fatal log handler)
#4 libglib-2.0.so.0 + 0x976d2
#5 libgtk-3.so.0 + 0x1eacc9 (icon helper / gtkiconhelper.c)
#6 libgtk-3.so.0 + 0x1eb208
#7 libgtk-3.so.0 + 0x1eb4ca
#8 libgtk-3.so.0 + 0x20043f
... (recursive GTK widget draw/size-allocate)
#35 libswt-pi3-gtk-4973r12.so + 0x541a9 (SWT GTK callback)
#36 libgtk-3.so.0 + 0x393788
#37 libswt-pi3-gtk-4973r12.so + 0x541bf
... (GTK <-> SWT signal callbacks, several levels)
The remaining threads are ordinary JVM threads parked in futex waits; nothing
Java-side is involved in the abort.
Symbolication is hampered by missing build-ids in the runtime:
Module libwebkit2gtk-4.1.so.0.21.9 without build-id
Module libjavascriptcoregtk-4.1.so.0.10.13 without build-id
Module libglycin-2.so.0 without build-id
Things tried, without effect
flatpak update— runtime already currentflatpak repair --userandsudo flatpak repair— no corruption foundflatpak override --user --talk-name=org.freedesktop.Flatpak org.eclipse.Java
(in case the sandboxedflatpak-spawnof the loader lacked portal access)
Workaround / resolution
Uninstalling the Flatpak and installing the plain Eclipse tarball
(eclipse-*-linux-gtk-x86_64.tar.gz, same 2026-06 / 4.40 release) resolves the
problem completely — no crashes since. The native install uses the host's GTK
and image loaders instead of the runtime's glycin stack.
Side effect of the native install: the SWT Browser widget reports
"No more handles because there is no underlying browser available. Please
ensure that WebKit with its GTK 3.x/4.x bindings is installed." until
WebKitGTK 4.1 is installed on the host. This is a separate, non-fatal issue.
Suggested angle
Two separable problems:
- The glycin SVG loader in the Flatpak runtime cannot start on this system
(exit 101 / panic). Root cause unknown. - GTK's
ensure_surface_for_gicon()asserts instead of degrading when even
the fallback icon cannot be loaded, turning a cosmetic icon problem into a
hard abort of the host application. Arguably the more serious of the two —
a missing icon should never kill an IDE.
- Ngôn ngữ chính
- Không có dữ liệu ngôn ngữ
- Star
- 6
- Fork
- 10
- Merge trung bình
- 3 giờ 13 phút
- Pull request đã merge (30 ngày)
- 5
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của flathub/org.eclipse.Java
-
bug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
flathub/org.eclipse.Java#100 · 1 bình luận ·
-
bug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
flathub/org.eclipse.Java#56 · 3 bình luận ·
-
bug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 28/100
flathub/org.eclipse.Java#34 · 3 bình luận · 1 reaction ·
-
question
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
flathub/org.eclipse.Java#30 · 10 bình luận ·
-
bug
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
flathub/org.eclipse.Java#18 ·
Tất cả issue của flathub/org.eclipse.Java
Issue tương tự
-
[Super Editor][Chat] - Floating editor scaffold does not reset panel height after closing panel Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
bug channel: beta feature: preferences feature: ui/ux
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
bug editor script-component smart items
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
decentraland/creator-hub#1654 ·
-
awaiting triage bug Causes friction Hop Gui P1 P2 Transforms
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100