Fix Clang/GCC's null-conversion warning: (#2081)
The warning is "implicit conversion of NULL constant to 'unsigned int' [-Wnull-conversion]". Happens when ImTextureID is not a void*, but unsigned int, for example.
diff --git a/imgui.h b/imgui.h
index 05ede49..3dd2636 100644
--- a/imgui.h
+++ b/imgui.h
@@ -1597,7 +1597,7 @@
ImDrawCallback UserCallback; // If != NULL, call the function instead of rendering the vertices. clip_rect and texture_id will be set normally.
void* UserCallbackData; // The draw callback code can access this.
- ImDrawCmd() { ElemCount = 0; ClipRect.x = ClipRect.y = ClipRect.z = ClipRect.w = 0.0f; TextureId = NULL; UserCallback = NULL; UserCallbackData = NULL; }
+ ImDrawCmd() { ElemCount = 0; ClipRect.x = ClipRect.y = ClipRect.z = ClipRect.w = 0.0f; TextureId = (ImTextureID)NULL; UserCallback = NULL; UserCallbackData = NULL; }
};
// Vertex index (override with '#define ImDrawIdx unsigned int' inside in imconfig.h)
diff --git a/imgui_draw.cpp b/imgui_draw.cpp
index 14d924d..553fb16 100644
--- a/imgui_draw.cpp
+++ b/imgui_draw.cpp
@@ -1395,7 +1395,7 @@
{
Locked = false;
Flags = ImFontAtlasFlags_None;
- TexID = NULL;
+ TexID = (ImTextureID)NULL;
TexDesiredWidth = 0;
TexGlyphPadding = 1;
@@ -1711,7 +1711,7 @@
ImFontAtlasBuildRegisterDefaultCustomRects(atlas);
- atlas->TexID = NULL;
+ atlas->TexID = (ImTextureID)NULL;
atlas->TexWidth = atlas->TexHeight = 0;
atlas->TexUvScale = ImVec2(0.0f, 0.0f);
atlas->TexUvWhitePixel = ImVec2(0.0f, 0.0f);