mirror of
https://github.com/Drezil/imgui.git
synced 2024-11-26 05:27:01 +00:00
Fixes zealous MSVC static analyzers warnings (#3938)
Other unfixed as I'm not happy with caving to false positives of every analyzers.
This commit is contained in:
parent
0c5b0c8b97
commit
412d6f7efe
@ -193,6 +193,7 @@ static bool ImGui_ImplWin32_UpdateMouseCursor()
|
|||||||
static void ImGui_ImplWin32_UpdateMousePos()
|
static void ImGui_ImplWin32_UpdateMousePos()
|
||||||
{
|
{
|
||||||
ImGuiIO& io = ImGui::GetIO();
|
ImGuiIO& io = ImGui::GetIO();
|
||||||
|
IM_ASSERT(g_hWnd != 0);
|
||||||
|
|
||||||
// Set OS mouse position if requested (rarely used, only when ImGuiConfigFlags_NavEnableSetMousePos is enabled by user)
|
// Set OS mouse position if requested (rarely used, only when ImGuiConfigFlags_NavEnableSetMousePos is enabled by user)
|
||||||
if (io.WantSetMousePos)
|
if (io.WantSetMousePos)
|
||||||
|
11
imgui.cpp
11
imgui.cpp
@ -1133,11 +1133,18 @@ void ImGuiIO::AddInputCharacterUTF16(ImWchar16 c)
|
|||||||
if (InputQueueSurrogate != 0)
|
if (InputQueueSurrogate != 0)
|
||||||
{
|
{
|
||||||
if ((c & 0xFC00) != 0xDC00) // Invalid low surrogate
|
if ((c & 0xFC00) != 0xDC00) // Invalid low surrogate
|
||||||
|
{
|
||||||
InputQueueCharacters.push_back(IM_UNICODE_CODEPOINT_INVALID);
|
InputQueueCharacters.push_back(IM_UNICODE_CODEPOINT_INVALID);
|
||||||
else if (IM_UNICODE_CODEPOINT_MAX == (0xFFFF)) // Codepoint will not fit in ImWchar (extra parenthesis around 0xFFFF somehow fixes -Wunreachable-code with Clang)
|
}
|
||||||
cp = IM_UNICODE_CODEPOINT_INVALID;
|
|
||||||
else
|
else
|
||||||
|
{
|
||||||
|
#if IM_UNICODE_CODEPOINT_MAX == 0xFFFF
|
||||||
|
cp = IM_UNICODE_CODEPOINT_INVALID; // Codepoint will not fit in ImWchar
|
||||||
|
#else
|
||||||
cp = (ImWchar)(((InputQueueSurrogate - 0xD800) << 10) + (c - 0xDC00) + 0x10000);
|
cp = (ImWchar)(((InputQueueSurrogate - 0xD800) << 10) + (c - 0xDC00) + 0x10000);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
InputQueueSurrogate = 0;
|
InputQueueSurrogate = 0;
|
||||||
}
|
}
|
||||||
InputQueueCharacters.push_back(cp);
|
InputQueueCharacters.push_back(cp);
|
||||||
|
@ -2678,6 +2678,7 @@ void ImGui::TableSortSpecsBuild(ImGuiTable* table)
|
|||||||
// Write output
|
// Write output
|
||||||
table->SortSpecsMulti.resize(table->SortSpecsCount <= 1 ? 0 : table->SortSpecsCount);
|
table->SortSpecsMulti.resize(table->SortSpecsCount <= 1 ? 0 : table->SortSpecsCount);
|
||||||
ImGuiTableColumnSortSpecs* sort_specs = (table->SortSpecsCount == 0) ? NULL : (table->SortSpecsCount == 1) ? &table->SortSpecsSingle : table->SortSpecsMulti.Data;
|
ImGuiTableColumnSortSpecs* sort_specs = (table->SortSpecsCount == 0) ? NULL : (table->SortSpecsCount == 1) ? &table->SortSpecsSingle : table->SortSpecsMulti.Data;
|
||||||
|
if (sort_specs != NULL)
|
||||||
for (int column_n = 0; column_n < table->ColumnsCount; column_n++)
|
for (int column_n = 0; column_n < table->ColumnsCount; column_n++)
|
||||||
{
|
{
|
||||||
ImGuiTableColumn* column = &table->Columns[column_n];
|
ImGuiTableColumn* column = &table->Columns[column_n];
|
||||||
|
Loading…
Reference in New Issue
Block a user