diff options
Diffstat (limited to 'plugins/warp/ui/plugin.cpp')
| -rw-r--r-- | plugins/warp/ui/plugin.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/plugins/warp/ui/plugin.cpp b/plugins/warp/ui/plugin.cpp index 388fea3c..d4860b91 100644 --- a/plugins/warp/ui/plugin.cpp +++ b/plugins/warp/ui/plugin.cpp @@ -163,17 +163,24 @@ WarpSidebarWidget::WarpSidebarWidget(BinaryViewRef data) : SidebarWidget("WARP") tabWidget->addTab(matchedFrame, "Matched Functions"); tabWidget->addTab(containerFrame, "Containers"); + // Do a full update if analysis has been done, otherwise we may persist old data and not have new data. m_analysisEvent = new AnalysisCompletionEvent(m_data, [this]() { ExecuteOnMainThread([this]() { Update(); }); }); + std::shared_ptr<WarpFetcher> fetcher = WarpFetcher::Global(); + fetcher->AddCompletionCallback([this]() { + Update(); + return KeepCallback; + }); + layout->addWidget(tabWidget); this->setLayout(layout); // NOTE: This fetcher is shared with the fetch dialog that is constructed on initialization of this plugin. - m_currentFunctionWidget->SetFetcher(WarpFetcher::Global()); + m_currentFunctionWidget->SetFetcher(fetcher); } WarpSidebarWidget::~WarpSidebarWidget() |
