diff --git a/ui/frame.cpp b/ui/frame.cpp index 64d9fdc..f444d03 100644 --- a/ui/frame.cpp +++ b/ui/frame.cpp @@ -767,8 +767,10 @@ GrNode::GrNode(NodeGraph *parent) : wxPanel(parent, wxID_ANY, {0, 0}, {175, 80}) std::vector choicesOrig; std::vector choices; - for(size_t i = CHi_Window_GetNextSource(-1); i < CHi_Window_GetSourceCount(); i = CHi_Window_GetNextSource(i)) { - auto name = CHi_Window_GetSourceName(i); + void *wbuf; + size_t windowCount = CHi_Window_GetList(&wbuf); + for(size_t i = 0; i < windowCount; i++) { + const char *name = CHi_Window_GetName(wbuf, i); choicesOrig.push_back(name); choices.push_back(wxString::FromUTF8(name)); @@ -786,6 +788,8 @@ GrNode::GrNode(NodeGraph *parent) : wxPanel(parent, wxID_ANY, {0, 0}, {175, 80}) pthread_mutex_unlock(&this->logical->ng->mut); } + + CHi_Window_FreeList(wbuf); } } });