diff options
author | Pascal Quantin <pascal.quantin@gmail.com> | 2016-01-20 15:15:23 +0100 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2016-01-20 23:39:15 +0000 |
commit | 06b75181a0a7033e270eae0b8009f5628048f0b5 (patch) | |
tree | 79bac6a2f1979a2c2176fb24e6990c441b05e835 | |
parent | 4b35048af377ffe7379d3bbf041a91740129e080 (diff) | |
download | wireshark-06b75181a0a7033e270eae0b8009f5628048f0b5.tar.gz |
Qt: fix a crash when trying to open TCP stream graph on a truncated TCP packet
Do not try to show TCP stream graph window if it was rejected in constructor
Change-Id: I4d1401e2c356391ceb8c8e3d37a668fc2a9fc92f
Reviewed-on: https://code.wireshark.org/review/13454
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
-rw-r--r-- | ui/qt/main_window_slots.cpp | 4 | ||||
-rw-r--r-- | ui/qt/tcp_stream_dialog.cpp | 1 | ||||
-rw-r--r-- | ui/tap-tcp-stream.c | 2 |
3 files changed, 5 insertions, 2 deletions
diff --git a/ui/qt/main_window_slots.cpp b/ui/qt/main_window_slots.cpp index 06abeb5ae4..bf59333d8e 100644 --- a/ui/qt/main_window_slots.cpp +++ b/ui/qt/main_window_slots.cpp @@ -2838,7 +2838,9 @@ void MainWindow::openTcpStreamDialog(int graph_type) packet_list_, SLOT(goToPacket(int))); connect(this, SIGNAL(setCaptureFile(capture_file*)), stream_dialog, SLOT(setCaptureFile(capture_file*))); - stream_dialog->show(); + if (stream_dialog->result() == QDialog::Accepted) { + stream_dialog->show(); + } } void MainWindow::on_actionStatisticsTcpStreamStevens_triggered() diff --git a/ui/qt/tcp_stream_dialog.cpp b/ui/qt/tcp_stream_dialog.cpp index 9eda3a5954..9f3fa9d91c 100644 --- a/ui/qt/tcp_stream_dialog.cpp +++ b/ui/qt/tcp_stream_dialog.cpp @@ -224,6 +224,7 @@ TCPStreamDialog::TCPStreamDialog(QWidget *parent, capture_file *cf, tcp_graph_ty this, SLOT(axisClicked(QCPAxis*,QCPAxis::SelectablePart,QMouseEvent*))); connect(sp->yAxis, SIGNAL(rangeChanged(QCPRange)), this, SLOT(transformYRange(QCPRange))); disconnect(ui->buttonBox, SIGNAL(accepted()), this, SLOT(accept())); + this->setResult(QDialog::Accepted); } TCPStreamDialog::~TCPStreamDialog() diff --git a/ui/tap-tcp-stream.c b/ui/tap-tcp-stream.c index cd14076360..71840a506e 100644 --- a/ui/tap-tcp-stream.c +++ b/ui/tap-tcp-stream.c @@ -330,7 +330,7 @@ select_tcpip_session(capture_file *cf, struct segment *hdrs) * segment, as tcp_graph_selected_packet_enabled() is used * to determine whether to enable any of our menu items. */ simple_dialog(ESD_TYPE_ERROR, ESD_BTN_OK, - "Selected packet isn't a TCP segment"); + "Selected packet isn't a TCP segment or is truncated"); return NULL; } /* XXX fix this later, we should show a dialog allowing the user |