Comments (7)
Fixed, thanks!
from sdl.
What platform are you seeing this on? Are you testing with the latest code?
I tested on Windows both with and without forcing the rendering path, and in each case the software renderer wasn't used and the window surface was successfully created.
from sdl.
It's Linux, tested again with the latest commit (9d47dae):
SDL_RENDER_DRIVER=software ./test/testdrawchessboard
ERROR: Render creation for surface fail : Parameter 'window' is invalid
SDL_RENDER_DRIVER=opengl
and others work just fine.
from sdl.
I just tested and that same setup works fine here.
That error message means that SDL_CreateSoftwareRenderer() failed, which doesn't make any sense because the hint shouldn't affect that, and there is never any window in that code path. Can you debug that function to see what's happening?
from sdl.
Differences between the environment flag and without it:
In testdrawchessboard.c:133
, SDL_GetWindowSurface(window)
returns null instead of SDL_Surface
In SDL_video.c:3371
, SDL_CreateWindowFramebuffer
returns null instead of SDL_Surface
In SDL_video.c:3311
, ShouldAttemptTextureFramebuffer
is false, thus created_framebuffer
is never set, returning null
Removing this piece of code (which was introduced in 5c8d92e ) mitigates this issue.
from sdl.
SDL_CreateSoftwareRenderer
fails here:
SDL_render.c
, SDL_CreateRendererWithProperties
:
if ((!window && !surface) || (window && surface)) {
SDL_InvalidParamError("window");
goto error;
}
Parameter window
is null here, because SDL_GetProperty(props, SDL_PROP_RENDERER_CREATE_WINDOW_POINTER, NULL)
returns a null pointer here.
surface
is null here because SDL_GetWindowSurface()
returns null before calling this function, and SDL_SetProperty is set with a null surface.
from sdl.
Okay, I'm able to reproduce this on Wayland, thanks!
from sdl.
Related Issues (20)
- Add SDL_Vulkan_GetPresentationSupport
- SDL3 Camera Frame Rate Limited to 10 FPS on Ubuntu 22.04 HOT 5
- [Suggestion] Include the 'Instance' qualifier to SDL_video functions that take instance ID parameters HOT 23
- [Suggestion] Rename concepts in the Properties API HOT 14
- SDL_SetAudioDeviceFrequencyRatio and SDL_GetAudioDeviceFrequencyRatio HOT 3
- Drawing regression in latest SDL3 HOT 22
- CMAKE_ASM_MASM_COMPILE_OBJECT not set when adding SDL as a subdirectory to CMake HOT 10
- Should SDL_GAMECONTROLLERCONFIG be SDL_GAMEPADCONFIG? HOT 1
- No implementations for SDL libraries found.
- [SDL_video] SDL_GetWindowPixelFormat still returns Uint32 instead of an SDL_PixelFormat value HOT 4
- Suggestion to consider modularity of SDL and separate libraries HOT 2
- Patching with SDL_migration.cocci does not work HOT 2
- SDL_SINT64_C vs SDL_INT64_C define mistake
- SDL2: sometimes linux automatically rescales window to a minimum size HOT 1
- Memory Leak with Newest SDL3 HOT 10
- Windows CI failing in icon.h creation
- SDL renderer "ERROR: Could not get a framebuffer" when running a SDL-release-2.30.5 program on a Debian system without X. HOT 30
- Rename some Get/Set functions to match the new naming style HOT 5
- Incorrect usage of GetStringUTFChars/NewStringUTF in android jni code HOT 1
- SDL_Renderer vulkan backend fails while re-entering the app on android HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sdl.