瀏覽代碼

InputText: fixed badly broken clipboard copy/bug (#8254, #8242)

Broken by 32f1140
ocornut 8 月之前
父節點
當前提交
eb642a9535
共有 1 個文件被更改,包括 2 次插入2 次删除
  1. 2 2
      imgui_widgets.cpp

+ 2 - 2
imgui_widgets.cpp

@@ -4906,8 +4906,8 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_
                 const int ib = state->HasSelection() ? ImMin(state->Stb->select_start, state->Stb->select_end) : 0;
                 const int ib = state->HasSelection() ? ImMin(state->Stb->select_start, state->Stb->select_end) : 0;
                 const int ie = state->HasSelection() ? ImMax(state->Stb->select_start, state->Stb->select_end) : state->TextLen;
                 const int ie = state->HasSelection() ? ImMax(state->Stb->select_start, state->Stb->select_end) : state->TextLen;
                 g.TempBuffer.reserve(ie - ib + 1);
                 g.TempBuffer.reserve(ie - ib + 1);
-                memcpy(g.TempBuffer.Data, state->TextSrc, ie - ib);
-                g.TempBuffer.Data[ie] = 0;
+                memcpy(g.TempBuffer.Data, state->TextSrc + ib, ie - ib);
+                g.TempBuffer.Data[ie - ib] = 0;
                 SetClipboardText(g.TempBuffer.Data);
                 SetClipboardText(g.TempBuffer.Data);
             }
             }
             if (is_cut)
             if (is_cut)