LizardByte / LizardByte/Sunshine

Using Do/Undo Command makes connection impossible

Open
#4,461 20 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
41.3k
Forks
2.1k
Avg merge
23h 47m
Merged PRs (30d)
124

Description

Is there an existing issue for this?
  • I have searched the existing issues
Is your issue described in the documentation?
  • I have read the documentation
Is your issue present in the latest beta/pre-release?

This issue is present in the latest pre-release

Describe the Bug

When using the Do/Undo commands which are described in the docs, no connection is possible anymore.
Do Note: These commands work just fine outside sunshine and also worked in previous sunshine versions, though I don't exactly know when it broke.

I'm using:
sh -c "kscreen-doctor output.DP-1.mode.${SUNSHINE_CLIENT_WIDTH}x${SUNSHINE_CLIENT_HEIGHT}@${SUNSHINE_CLIENT_FPS} && kscreen-doctor output.DP-2.disable"
and Undo
kscreen-doctor output.DP-1.mode.2560x1440@144 && kscreen-doctor output.DP-2.enable

Results in

"[2025-11-29 23:04:33.089]: Error: Property tree is empty. Probably, control flow got interrupted by an unexpected C++ exception. This is a bug in Sunshine. Moonlight-qt will report Malformed XML (missing root element)."

Expected Behavior

No response

Additional Context

No response

Host Operating System

Linux

Operating System Version

Bazzite Latest (Fedora 43)

Architecture

amd64/x86_64

Sunshine commit or version

Version 2025.1127.34355

Package

Linux - Fedora Copr

GPU Type

AMD

GPU Model

9070 XT

GPU Driver/Mesa Version

25.3.0

Capture Method

None

Config

Apps

Relevant log output
[2025-11-29 23:09:07.609]: Info: // Testing for available encoders, this may generate errors. You can safely ignore those errors. //
[2025-11-29 23:09:07.609]: Info: Trying encoder [nvenc]
[2025-11-29 23:09:07.609]: Info: Screencasting with KMS
[2025-11-29 23:09:07.609]: Info: /dev/dri/card0 -> amdgpu
[2025-11-29 23:09:07.609]: Error: Couldn't find monitor [0]
[2025-11-29 23:09:07.609]: Info: /dev/dri/card0 -> amdgpu
[2025-11-29 23:09:07.610]: Error: Couldn't find monitor [0]
[2025-11-29 23:09:07.810]: Info: Screencasting with KMS
[2025-11-29 23:09:07.810]: Info: /dev/dri/card0 -> amdgpu
[2025-11-29 23:09:07.810]: Error: Couldn't find monitor [0]
[2025-11-29 23:09:07.810]: Info: /dev/dri/card0 -> amdgpu
[2025-11-29 23:09:07.811]: Error: Couldn't find monitor [0]
[2025-11-29 23:09:08.011]: Info: Encoder [nvenc] failed
[2025-11-29 23:09:08.011]: Info: Trying encoder [vaapi]
[2025-11-29 23:09:08.011]: Info: Screencasting with KMS
[2025-11-29 23:09:08.011]: Info: /dev/dri/card0 -> amdgpu
[2025-11-29 23:09:08.011]: Info: Found monitor for DRM screencasting
[2025-11-29 23:09:08.011]: Info: Found connector ID [124]
[2025-11-29 23:09:08.012]: Info: Found cursor plane [101]
[2025-11-29 23:09:08.017]: Info: Creating encoder [h264_vaapi]
[2025-11-29 23:09:08.017]: Info: Color coding: SDR (Rec. 601)
[2025-11-29 23:09:08.017]: Info: Color depth: 8-bit
[2025-11-29 23:09:08.017]: Info: Color range: JPEG
[2025-11-29 23:09:08.028]: Info: vaapi vendor: Mesa Gallium driver 25.3.0 for AMD Radeon RX 9070 XT (radeonsi, gfx1201, LLVM 21.1.6, DRM 3.64, 6.17.7-ba19.fc43.x86_64)
[2025-11-29 23:09:08.028]: Info: Streaming bitrate is 1000000
[2025-11-29 23:09:08.028]: Info: Using normal encoding mode
[2025-11-29 23:09:08.028]: Info: Using default rate control
[2025-11-29 23:09:08.046]: Info: Creating encoder [hevc_vaapi]
[2025-11-29 23:09:08.046]: Info: Color coding: SDR (Rec. 601)
[2025-11-29 23:09:08.046]: Info: Color depth: 8-bit
[2025-11-29 23:09:08.046]: Info: Color range: JPEG
[2025-11-29 23:09:08.058]: Info: vaapi vendor: Mesa Gallium driver 25.3.0 for AMD Radeon RX 9070 XT (radeonsi, gfx1201, LLVM 21.1.6, DRM 3.64, 6.17.7-ba19.fc43.x86_64)
[2025-11-29 23:09:08.058]: Info: Streaming bitrate is 1000000
[2025-11-29 23:09:08.058]: Info: Using normal encoding mode
[2025-11-29 23:09:08.058]: Info: Using default rate control
[2025-11-29 23:09:08.078]: Info: Creating encoder [av1_vaapi]
[2025-11-29 23:09:08.078]: Info: Color coding: SDR (Rec. 601)
[2025-11-29 23:09:08.078]: Info: Color depth: 8-bit
[2025-11-29 23:09:08.078]: Info: Color range: JPEG
[2025-11-29 23:09:08.089]: Info: vaapi vendor: Mesa Gallium driver 25.3.0 for AMD Radeon RX 9070 XT (radeonsi, gfx1201, LLVM 21.1.6, DRM 3.64, 6.17.7-ba19.fc43.x86_64)
[2025-11-29 23:09:08.089]: Info: Streaming bitrate is 1000000
[2025-11-29 23:09:08.089]: Info: Using normal encoding mode
[2025-11-29 23:09:08.089]: Info: Using VBR with single frame VBV size
[2025-11-29 23:09:08.089]: Warning: [av1_vaapi @ 0x7f82a84196c0] Multiple slices were requested but this codec does not support controlling slices.
[2025-11-29 23:09:08.104]: Info: Screencasting with KMS
[2025-11-29 23:09:08.104]: Info: /dev/dri/card0 -> amdgpu
[2025-11-29 23:09:08.104]: Info: Found monitor for DRM screencasting
[2025-11-29 23:09:08.104]: Info: Found connector ID [124]
[2025-11-29 23:09:08.104]: Info: Found cursor plane [101]
[2025-11-29 23:09:08.110]: Info: Creating encoder [hevc_vaapi]
[2025-11-29 23:09:08.110]: Info: Color coding: SDR (Rec. 709)
[2025-11-29 23:09:08.110]: Info: Color depth: 10-bit
[2025-11-29 23:09:08.110]: Info: Color range: JPEG
[2025-11-29 23:09:08.120]: Info: vaapi vendor: Mesa Gallium driver 25.3.0 for AMD Radeon RX 9070 XT (radeonsi, gfx1201, LLVM 21.1.6, DRM 3.64, 6.17.7-ba19.fc43.x86_64)
[2025-11-29 23:09:08.121]: Info: Streaming bitrate is 1000000
[2025-11-29 23:09:08.121]: Info: Using normal encoding mode
[2025-11-29 23:09:08.121]: Info: Using default rate control
[2025-11-29 23:09:08.141]: Info: Creating encoder [av1_vaapi]
[2025-11-29 23:09:08.141]: Info: Color coding: SDR (Rec. 709)
[2025-11-29 23:09:08.141]: Info: Color depth: 10-bit
[2025-11-29 23:09:08.141]: Info: Color range: JPEG
[2025-11-29 23:09:08.151]: Info: vaapi vendor: Mesa Gallium driver 25.3.0 for AMD Radeon RX 9070 XT (radeonsi, gfx1201, LLVM 21.1.6, DRM 3.64, 6.17.7-ba19.fc43.x86_64)
[2025-11-29 23:09:08.151]: Info: Streaming bitrate is 1000000
[2025-11-29 23:09:08.151]: Info: Using normal encoding mode
[2025-11-29 23:09:08.151]: Info: Using VBR with single frame VBV size
[2025-11-29 23:09:08.151]: Warning: [av1_vaapi @ 0x7f82a84196c0] Multiple slices were requested but this codec does not support controlling slices.
[2025-11-29 23:09:08.166]: Info: 
[2025-11-29 23:09:08.166]: Info: // Ignore any errors mentioned above, they are not relevant. //
[2025-11-29 23:09:08.166]: Info: 
[2025-11-29 23:09:08.166]: Info: Found H.264 encoder: h264_vaapi [vaapi]
[2025-11-29 23:09:08.166]: Info: Found HEVC encoder: hevc_vaapi [vaapi]
[2025-11-29 23:09:08.166]: Info: Found AV1 encoder: av1_vaapi [vaapi]
[2025-11-29 23:09:08.181]: Error: Property tree is empty. Probably, control flow got interrupted by an unexpected C++ exception. This is a bug in Sunshine. Moonlight-qt will report Malformed XML (missing root element).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the failure with the documented Do and Undo commands using kscreen-doctor, then compare the resulting logs with a connection that does not run them. Trace the command-handling and connection setup entry points from the reported “Property tree is empty” error; done means both commands complete without interrupting connection setup and Moonlight connects normally.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, linux
Domain
backend, cli, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.