[Steam Frame] xdg-desktop-portal-holo segfaults on Settings.ReadOne for a missing key
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 48/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- linux, shell
- Área
- operating-systems
Línea de trabajo
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.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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.
- Lenguaje dominante
- Sin datos de lenguaje
- Estrellas
- 2.7k
- Forks
- 89
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de ValveSoftware/SteamOS
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
ValveSoftware/SteamOS#3037 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
ValveSoftware/SteamOS#2983 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
ValveSoftware/SteamOS#2927 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
ValveSoftware/SteamOS#2875 · 1 comentario ·
-
steam-short-session-tracker: incorrect registry backup path resets settings during automatic repairAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
ValveSoftware/SteamOS#2829 ·
Todos los issues de ValveSoftware/SteamOS
Issues similares
-
extension-modules type-bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
paullj/toy-compiler#421 ·
-
run root's host dispatcher returns EINVAL for extra clock_nanosleep flag bits; Linux ignores themAbiertofollow-up
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
carrick-sh/carrick#1990 ·
Los mantenedores suelen responder en 1 día
-
good first issue help wanted program
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
hffgzktbcc-blip/ounce-core#297 ·
Los mantenedores suelen responder en 1 día