[Steam Frame] xdg-desktop-portal-holo segfaults on Settings.ReadOne for a missing key
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- linux, shell
- Ambito
- operating-systems
Direzione di ricerca
Start by running the provided gdbus reproduction in the Steam Frame gamescope session and confirm that xdg-desktop-portal-holo exits with SIGSEGV. Trace the org.freedesktop.portal.Settings.ReadOne handling in the xdg-desktop-portal-holo backend to find where a missing key or namespace causes the crash. Done means the backend remains alive and returns org.freedesktop.portal.Error.NotFound or an empty result, with a regression test covering the missing-key case.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Your system information
- Device: Steam Frame
- SteamOS: 0.4.5 (variant
vr, build 20261022.6150929) - SteamVR: 2.18.2
- Packages:
xdg-desktop-portal-holo 0.1.14.bb73298-2,xdg-desktop-portal 1.18.4-1 - Session: gamescope-session (
XDG_CURRENT_DESKTOP=gamescope)
Please describe your issue in as much detail as possible:
xdg-desktop-portal-holo crashes with SIGSEGV whenever a client asks the Settings portal for a key that does not exist
via org.freedesktop.portal.Settings.ReadOne. Instead of returning org.freedesktop.portal.Error.NotFound, the backend
process dies (systemd restarts it on the next request).
In practice this is hit by every Qt app that runs as a Flatpak from the Steam session: the gamescope session exports
QT_QPA_PLATFORMTHEME=kde, so Qt loads the KDE Plasma platform theme, which (inside Flatpak) reads kdeglobals keys
through the Settings portal. On our headset the backend crashed 37 times in two days, once every time our app opened its
window (coredumpctl shows /usr/lib/xdg-desktop-portal-holo SIGSEGV, minidumps are in
/var/lib/steamos-log-submitter/pending/minidump/).
ReadOne for an existing key, the deprecated Read, and ReadAll (including a namespace that matches nothing) all work.
Steps for reproducing this issue:
- On a Steam Frame, open a shell in the gamescope session (SSH as the default user is enough).
- Note the current crash count:
coredumpctl list --no-pager | grep -c xdg-desktop-portal-holo - Ask the portal for a key that does not exist:
The call returnsgdbus call --session --dest org.freedesktop.portal.Desktop \ --object-path /org/freedesktop/portal/desktop \ --method org.freedesktop.portal.Settings.ReadOne org.kde.kdeglobals.General ColorSchemeGDBus.Error:org.freedesktop.portal.Error.NotFound: Requested setting not found(generated by the
frontend after the backend went away). - Count again: the number went up by one.
journalctl --user -u xdg-desktop-portal-holoshows
Main process exited, code=dumped, status=11/SEGV.
For comparison, these do not crash:
... --method org.freedesktop.portal.Settings.ReadOne org.freedesktop.appearance color-scheme
... --method org.freedesktop.portal.Settings.Read org.freedesktop.appearance color-scheme
... --method org.freedesktop.portal.Settings.ReadAll '["org.kde.kdeglobals.*"]'
Expected: the backend returns NotFound (or an empty result) for unknown namespaces/keys and keeps running.
Workaround we ship: inside Flatpak we override QT_QPA_PLATFORMTHEME=kde with xdgdesktopportal before
QGuiApplication is created, so Qt only reads org.freedesktop.appearance.
- Lingua principale
- Nessun dato sulla lingua
- Stelle
- 2.7k
- Fork
- 89
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di ValveSoftware/SteamOS
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
ValveSoftware/SteamOS#3037 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
ValveSoftware/SteamOS#2983 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
ValveSoftware/SteamOS#2927 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
ValveSoftware/SteamOS#2875 · 1 commento ·
-
steam-short-session-tracker: incorrect registry backup path resets settings during automatic repairAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 80/100
ValveSoftware/SteamOS#2829 ·
Tutte le issue di ValveSoftware/SteamOS
Issue simili
-
good first issue help wanted program
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
hffgzktbcc-blip/ounce-core#297 ·
I maintainer di solito rispondono entro 1 giorno
-
insight P1 roadmap
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 69/100
bytecodealliance/rustix#1736 ·
I maintainer di solito rispondono entro 1 giorno
-
Possible recompiler bugForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
sarah-walker-pcem/pcem#339 · 1 commento ·
-
NormalizeString returns 0 instead of the negated needed length, so .NET's string.Normalize throwsAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
mirkobrombin/raven#158 ·
I maintainer di solito rispondono entro 1 giorno