Internals: Initialize drawlist earlier in Begin() to facilitate detecting accidental draw earlier than legal. (#3311)
diff --git a/imgui.cpp b/imgui.cpp
index 2df5ce1..c9146e1 100644
--- a/imgui.cpp
+++ b/imgui.cpp
@@ -5606,6 +5606,7 @@
window->HasCloseButton = (p_open != NULL);
window->ClipRect = ImVec4(-FLT_MAX,-FLT_MAX,+FLT_MAX,+FLT_MAX);
window->IDStack.resize(1);
+ window->DrawList->_ResetForNewFrame();
// Restore buffer capacity when woken from a compacted state, to avoid
if (window->MemoryCompacted)
@@ -5883,7 +5884,7 @@
// DRAWING
// Setup draw list and outer clipping rectangle
- window->DrawList->_ResetForNewFrame();
+ IM_ASSERT(window->DrawList->CmdBuffer.Size == 1 && window->DrawList->CmdBuffer[0].ElemCount == 0);
window->DrawList->PushTextureID(g.Font->ContainerAtlas->TexID);
PushClipRect(host_rect.Min, host_rect.Max, false);