go-sdl2
go-sdl2 copied to clipboard
Unable to call RenderGeometery with nil indicies
The SDL2 documentation says you can pass in NULL indices.
The go-sdl2 function assumes there is at least one indice passed in:
I presume the fix is probably something like this:
diff --git a/sdl/render.go b/sdl/render.go
index 6e2abab..45b67c9 100644
--- a/sdl/render.go
+++ b/sdl/render.go
@@ -1176,9 +1176,10 @@ func (renderer *Renderer) RenderGeometry(texture *Texture, vertices []Vertex, in
_texture := texture.cptr()
_vertices := (*C.SDL_Vertex)(unsafe.Pointer(&vertices[0]))
_num_vertices := C.int(len(vertices))
- _indices := (*C.int)(unsafe.Pointer(&indices[0]))
+ var _indices *C.int
_num_indices := C.int(0)
if indices != nil {
+ _indices = (*C.int)(unsafe.Pointer(&indices[0]))
_num_indices = C.int(len(indices))
}
err = errorFromInt(int(C.SDL_RenderGeometry(renderer.cptr(), _texture, _vertices, _num_vertices, _indices, _num_indices)))
Thanks for reporting the issue and providing the fix @advisoft! I have applied it and tagged a new patch release with v0.4.20
.
Thank you.