From 0271a62e676d50940ec5f86d94cf66629894c25f Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen Date: Sat, 13 Sep 2025 18:23:09 +0300 Subject: fix: Replace C-style casts with C++ casts This commit addresses cppcheck warnings about C-style casts (cstyleCast) by replacing them with appropriate C++ casts. C-style casts are considered dangerous because they can perform unsafe conversions without compile-time type checking, while C++ casts are more explicit and type-safe. Changes made: - static_cast for safe type conversions (e.g., void* to struct*) - reinterpret_cast for pointer type conversions (e.g., uint8_t* to char*) - Combined static_cast and reinterpret_cast for integer-to-pointer conversions Fixed files: - kmscube/cube-gles2.cpp: GLvoid* casts for OpenGL vertex attribute pointers - kmscube/cube-wl.cpp: Wayland interface pointer casts - kmscube/cube-x11.cpp: X11 window handle conversion - utils/fbtest.cpp: mmap return value cast - utils/kmstest.cpp: Framebuffer pointer arithmetic - utils/kmsview.cpp: Framebuffer memory mapping cast --- kmscube/cube-gles2.cpp | 6 +++--- kmscube/cube-wl.cpp | 6 +++--- kmscube/cube-x11.cpp | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) (limited to 'kmscube') diff --git a/kmscube/cube-gles2.cpp b/kmscube/cube-gles2.cpp index 854c90e..0e52a32 100644 --- a/kmscube/cube-gles2.cpp +++ b/kmscube/cube-gles2.cpp @@ -200,11 +200,11 @@ GlScene::GlScene() glBufferSubData(GL_ARRAY_BUFFER, positionsoffset, sizeof(vVertices), &vVertices[0]); glBufferSubData(GL_ARRAY_BUFFER, colorsoffset, sizeof(vColors), &vColors[0]); glBufferSubData(GL_ARRAY_BUFFER, normalsoffset, sizeof(vNormals), &vNormals[0]); - glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 0, (const GLvoid*)positionsoffset); + glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 0, reinterpret_cast(positionsoffset)); glEnableVertexAttribArray(0); - glVertexAttribPointer(1, 3, GL_FLOAT, GL_FALSE, 0, (const GLvoid*)normalsoffset); + glVertexAttribPointer(1, 3, GL_FLOAT, GL_FALSE, 0, reinterpret_cast(normalsoffset)); glEnableVertexAttribArray(1); - glVertexAttribPointer(2, 3, GL_FLOAT, GL_FALSE, 0, (const GLvoid*)colorsoffset); + glVertexAttribPointer(2, 3, GL_FLOAT, GL_FALSE, 0, reinterpret_cast(colorsoffset)); glEnableVertexAttribArray(2); } diff --git a/kmscube/cube-wl.cpp b/kmscube/cube-wl.cpp index 136a4ed..95ad5c3 100644 --- a/kmscube/cube-wl.cpp +++ b/kmscube/cube-wl.cpp @@ -23,9 +23,9 @@ struct window { static void registry_add_object(void* data, struct wl_registry* registry, uint32_t name, const char* interface, uint32_t version) { if (!strcmp(interface, "wl_compositor")) - s_compositor = (struct wl_compositor*)wl_registry_bind(registry, name, &wl_compositor_interface, 0); + s_compositor = static_cast(wl_registry_bind(registry, name, &wl_compositor_interface, 0)); else if (!strcmp(interface, "wl_shell")) - s_shell = (struct wl_shell*)wl_registry_bind(registry, name, &wl_shell_interface, 0); + s_shell = static_cast(wl_registry_bind(registry, name, &wl_shell_interface, 0)); } static void registry_remove_object(void* data, struct wl_registry* registry, uint32_t name) @@ -41,7 +41,7 @@ static void shell_surface_ping(void* data, struct wl_shell_surface* shell_surfac static void shell_surface_configure(void* data, struct wl_shell_surface* shell_surface, uint32_t edges, int32_t width, int32_t height) { - struct window* window = (struct window*)data; + struct window* window = static_cast(data); wl_egl_window_resize(window->egl_window, width, height, 0, 0); } diff --git a/kmscube/cube-x11.cpp b/kmscube/cube-x11.cpp index ae018ea..eb57616 100644 --- a/kmscube/cube-x11.cpp +++ b/kmscube/cube-x11.cpp @@ -13,7 +13,7 @@ using namespace std; static void main_loop(Display* dpy, xcb_connection_t* c, xcb_window_t window, uint32_t width, uint32_t height) { EglState egl(dpy); - EglSurface surface(egl, (void*)(uintptr_t)window); + EglSurface surface(egl, reinterpret_cast(static_cast(window))); GlScene scene; scene.set_viewport(width, height); -- cgit v1.2.3