summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ui/qt/main_window.cpp9
-rw-r--r--ui/qt/wireshark_application.cpp6
-rw-r--r--ui/qt/wireshark_application.h3
3 files changed, 17 insertions, 1 deletions
diff --git a/ui/qt/main_window.cpp b/ui/qt/main_window.cpp
index ef59ae124a..b053c0c1cf 100644
--- a/ui/qt/main_window.cpp
+++ b/ui/qt/main_window.cpp
@@ -396,6 +396,15 @@ MainWindow::MainWindow(QWidget *parent) :
connect(&capture_file_, SIGNAL(captureCaptureUpdateContinue(capture_session*)),
main_ui_->statusBar, SLOT(updateCaptureStatistics(capture_session*)));
+ connect(&capture_file_, SIGNAL(captureCaptureUpdateStarted(capture_session *)),
+ wsApp, SLOT(captureStarted()));
+ connect(&capture_file_, SIGNAL(captureCaptureUpdateFinished(capture_session *)),
+ wsApp, SLOT(captureFinished()));
+ connect(&capture_file_, SIGNAL(captureCaptureFixedStarted(capture_session *)),
+ wsApp, SLOT(captureStarted()));
+ connect(&capture_file_, SIGNAL(captureCaptureFixedFinished(capture_session *)),
+ wsApp, SLOT(captureFinished()));
+
connect(&capture_file_, SIGNAL(captureFileOpened()),
this, SLOT(captureFileOpened()));
connect(&capture_file_, SIGNAL(captureFileReadStarted()),
diff --git a/ui/qt/wireshark_application.cpp b/ui/qt/wireshark_application.cpp
index 3d5f983d7f..3607ced737 100644
--- a/ui/qt/wireshark_application.cpp
+++ b/ui/qt/wireshark_application.cpp
@@ -188,6 +188,9 @@ void WiresharkApplication::refreshRecentFiles(void) {
recent_item_status *ri;
RecentFileStatus *rf_status;
+ // We're in the middle of a capture. Don't create traffic.
+ if (active_captures_ > 0) return;
+
foreach (ri, recent_items_) {
if (ri->in_thread) {
continue;
@@ -478,7 +481,8 @@ void WiresharkApplication::itemStatusFinished(const QString filename, qint64 siz
WiresharkApplication::WiresharkApplication(int &argc, char **argv) :
QApplication(argc, argv),
initialized_(false),
- is_reloading_lua_(false)
+ is_reloading_lua_(false),
+ active_captures_(0)
{
wsApp = this;
setApplicationName("Wireshark");
diff --git a/ui/qt/wireshark_application.h b/ui/qt/wireshark_application.h
index 807fb84a80..dc1ba99f40 100644
--- a/ui/qt/wireshark_application.h
+++ b/ui/qt/wireshark_application.h
@@ -129,6 +129,7 @@ private:
QIcon capture_icon_;
static QString window_title_separator_;
QList<AppSignal> app_signals_;
+ int active_captures_;
protected:
bool event(QEvent *event);
@@ -156,6 +157,8 @@ signals:
public slots:
void clearRecentItems();
void captureFileReadStarted();
+ void captureStarted() { active_captures_++; }
+ void captureFinished() { active_captures_--; }
void updateTaps();
private slots: