BugFix New Source File Doubleclic

WTF did I think it would be a good idea to delete a source in a separate thread? This obviously causes a crash. To be investigated when a source tailes to delete... but should not happen...
This commit is contained in:
Bruno Herbelin
2023-01-31 21:22:53 +01:00
parent 6529b170e6
commit 268751815f
2 changed files with 3 additions and 12 deletions

View File

@@ -741,7 +741,7 @@ void ImGuiVisitor::visit (RenderSource& s)
if (ImGuiToolkit::IconButton(ICON_FA_PLAY_CIRCLE, "Open in Player")) if (ImGuiToolkit::IconButton(ICON_FA_PLAY_CIRCLE, "Open in Player"))
UserInterface::manager().showSourceEditor(&s); UserInterface::manager().showSourceEditor(&s);
ImGui::SameLine(); ImGui::SameLine();
if (ImGuiToolkit::IconButton(ICON_FA_WINDOW_MAXIMIZE, "Show Output")) if (ImGuiToolkit::IconButton(ICON_FA_LAPTOP, "Show Output"))
Settings::application.widget.preview = true; Settings::application.widget.preview = true;
ImGui::SetCursorPos(pos); ImGui::SetCursorPos(pos);

View File

@@ -8333,19 +8333,10 @@ SourcePreview::SourcePreview() : source_(nullptr), label_(""), reset_(0)
} }
static void deletesource(Source *s)
{
delete s;
}
void SourcePreview::setSource(Source *s, const string &label) void SourcePreview::setSource(Source *s, const string &label)
{ {
if(source_) { if(source_)
if (source_->ready()) delete source_;
delete source_;
else
std::thread (deletesource, source_).detach();
}
source_ = s; source_ = s;
label_ = label; label_ = label;