Widelands does not start if PC has OpenGL problems
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
widelands |
Fix Released
|
Medium
|
Unassigned |
Bug Description
I installed bzr6485 from Tino's page on an old Notebook with Windows XP SP3. When starting Widelands the frame of a command window appeared with the title SDL app or something similar. This disappeared immediately and nothing more happend.
The stderr.txt file states the following:
Caught exception (of type '11_wexception') in outermost handler!
The exception said: [c:/data/
This should not happen. Please file a bug report on version bzr6485[
and remember to specify your operating system.
I tried the mentioned parameter --opengl=0, then widelands starts normal.
Maybe it's possible to catch that kind of error and switch to no OpenGL mode automatically. Or at least add an entry to the start menu "Widelands - no OpenGL" using that parameter. After the first sucessful start the config file is created and the problem is avoided.
Related branches
- SirVer: Approve
-
Diff: 124 lines (+42/-20) (has conflicts)3 files modifiedsrc/graphic/graphic.cc (+37/-4)
src/graphic/render/gl_surface_texture.cc (+4/-15)
src/graphic/render/gl_surface_texture.h (+1/-1)
Changed in widelands: | |
importance: | Undecided → Medium |
status: | New → Confirmed |
Changed in widelands: | |
status: | Incomplete → Triaged |
Changed in widelands: | |
status: | Triaged → Fix Committed |
milestone: | none → build18-rc1 |
I think the proper solution would be to catch such errors and fall back to software rendering. From what I remember, the config file is created upon run if it doesn't exist so it should be easy to register which renderer should be used.
The user should of course receive feedback in some form upon first running WL that opengl is default, but since this was not supported the game falls back to software rendering.