OpenXRay / OpenXRay/xray-16

COP - xr_3da process enters stopped state upon launching

Open
#2,143 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Bug Linux
Dominant language
C++
Stars
3.6k
Forks
536
Avg merge
6d 1h
Merged PRs (30d)
3

Description

Describe the bug
When launching OpenXRay with ./bin/xr_3da, a glitched window briefly spawns and the process immediately suspends into a Stopped state. Launching the binary with setsid bypasses the suspension and allows it to run normally.

To Reproduce
Steps to reproduce the behavior:

  1. Compile OpenXRay with -DCMAKE_BUILD_TYPE=Release.
  2. Open a standard terminal window.
  3. Run ./bin/xr_3da.
  4. See error: A glitched window appears, followed by the process entering a Stopped state in the terminal.

Expected behavior
The engine should initialize its graphical window and start cleanly without triggering terminal session suspension.

Screenshots, videos
Terminal output log:

$ bin/xr_3da
~ Couldn't create surface from image: Parameter 'src' is invalid
OpenXRay Release build 10086, Sep 19 2026 (Linux 64-bit, shared)
Custom build from commit[42e6641258603a6605d8d9a16cdc44b4d86fb8b7] branch[dev]

command line

* CPU features: RDTSC, MMX, SSE, SSE2, SSE3, SSE41, SSE42, AVX, AVX2
* CPU threads: 8

Starting INPUT device...
SOUND: OpenAL: enumerate devices...
Initializing File System...
$fs_root$ = /home/fskerbs/Games/openxray
using fs-ltx fsgame.ltx
SOUND: OpenAL: system default sound device name is Built-in Audio Analog Stereo
SOUND: OpenAL: All available devices:
1. Built-in Audio Analog Stereo, Spec Version 1.1 (default) eax[0] efx[yes]
2. GM204 High Definition Audio Controller Digital Stereo (HDMI) [BenQ GW2283], Spec Version 1.1  eax[0] efx[yes]
FS: 40322 files cached 42 archives, 18Kb memory used.
Init FileSystem 0.158707 sec
-----loading \home\fskerbs\Games\openxray\gamedata\configs\system.ltx
-----loading \home\fskerbs\Games\openxray\gamedata\configs\system.ltx
* GPU vendor: [NVIDIA Corporation] device: [NVIDIA GeForce GTX 970/PCIe/SSE2]
* GPU OpenGL version: 4.1.0 NVIDIA 580.178.04
* GPU OpenGL shading language version: 4.10 NVIDIA via Cg compiler
* GPU OpenGL VTF units: [32] CTI units: [192]
Available render modes[1]:
renderer_r3
Executing config-script "user.ltx"...
[\home\fskerbs\Games\openxray\_appdata_\user.ltx] successfully loaded.
Selected renderer: renderer_r3
StringTable: loaded 34 files
Initializing Engine...
Executing config-script "\home\fskerbs\Games\openxray\gamedata\configs\default_controls.ltx"...
[\home\fskerbs\Games\openxray\gamedata\configs\default_controls.ltx] successfully loaded.
Executing config-script "user.ltx"...
Executing config-script "\home\fskerbs\Games\openxray\gamedata\configs\rspec_default.ltx"...
[\home\fskerbs\Games\openxray\gamedata\configs\rspec_default.ltx] successfully loaded.
Executing config-script "\home\fskerbs\Games\openxray\gamedata\configs\default_controls.ltx"...
[\home\fskerbs\Games\openxray\gamedata\configs\default_controls.ltx] successfully loaded.
StringTable: loaded 34 files
~ Invalid syntax in call to 'sv_adm_menu_ban_time'
~ Valid arguments: ui_mp_am_10_minutes/ui_mp_am_30_minutes/ui_mp_am_1_hour/ui_mp_am_6_hours/ui_mp_am_1_day/ui_mp_am_1_week/ui_mp_am_1_month/ui_mp_am_3_monthes/ui_mp_am_forever
~ Invalid syntax in call to 'sv_suspicious_actions_ban_time'
~ Valid arguments: ui_mp_am_10_minutes/ui_mp_am_30_minutes/ui_mp_am_1_hour/ui_mp_am_6_hours/ui_mp_am_1_day/ui_mp_am_1_week/ui_mp_am_1_month/ui_mp_am_3_monthes/ui_mp_am_forever
[\home\fskerbs\Games\openxray\_appdata_\user.ltx] successfully loaded.
SOUND: Selected device is Built-in Audio Analog Stereo
Starting RENDER device...
* GPU vendor: [NVIDIA Corporation] device: [NVIDIA GeForce GTX 970/PCIe/SSE2]
* GPU OpenGL version: 4.1.0 NVIDIA 580.178.04
* GPU OpenGL shading language version: 4.10 NVIDIA via Cg compiler
* GPU OpenGL VTF units: [32] CTI units: [192]
* DVB created: 4096K
* DIB created: 512K
! Renderer doesn't support blender 'effects\shadow_world'
Processing 2744 .thm files in [$game_textures$]
Load, texture descriptions loaded for 15 ms
* HWDST/PCF supported and used
* Script exporter has 251 nodes registered.
* Loading script: _G.script
* Loading script: class_registrator.script
* Loading script: ui_main_menu.script
* Loading script: smart_terrain.script
* Loading script: se_level_changer.script
* Loading script: se_actor.script
* Loading script: se_stalker.script
* Loading script: se_heli.script
* Loading script: se_zones.script
* Loading script: se_item.script
* Loading script: se_smart_cover.script
* Loading script: se_artefact.script
* Loading script: se_monster.script
* Loading script: sim_squad_scripted.script
* Loading script: game_registrator.script
Starting engine...

[26]+  Stopped                    bin/xr_3da

Desktop:

  • OS / Window Manager: Void Linux with dwm (Xorg)
  • GPU drivers: NVIDIA GTX 970 with proprietary drivers (v580)
  • Build: Release, dev branch (commit 42e66412)

Additional context

  • Whenever it hits that Stopped state, the shell doesn't actually close the game, it just leaves it hanging in the background and processes stack up in the process list if you try launching it a few times.
  • The issue only occurs when launching directly from a windowed terminal. Full-screening the terminal or using setsid prevents the suspension.
  • This issue also happens on build Release Master Gold.
  • glxinfo confirms OpenGL 4.6 support.

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 launch from a standard windowed terminal with the Release build and ./bin/xr_3da, comparing it with setsid and fullscreen-terminal launches. Review the engine startup path around the graphical window initialization and the terminal's Stopped state under Xorg/dwm. Done means direct launch initializes the game window and remains running without requiring setsid.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp, linux
Domain
desktop, game-dev, 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.