diff options
author | Peter Wu <peter@lekensteyn.nl> | 2015-11-27 17:57:34 +0100 |
---|---|---|
committer | Alexis La Goutte <alexis.lagoutte@gmail.com> | 2015-11-27 21:15:11 +0000 |
commit | d7f12436709e40d58d7fcdfbcdd08740c039e162 (patch) | |
tree | 7c55ea87976924a9b841b39fb583ee6962d96d3f /ui/qt/multicast_statistics_dialog.h | |
parent | 56625dd4562d89f711ab68caa8cf849509b0970f (diff) | |
download | wireshark-d7f12436709e40d58d7fcdfbcdd08740c039e162.tar.gz |
Fix crash in UDP Multicast Streams dialog
Attempting to open the UDP Multicast Streams dialog in the GTK UI
triggers an instant crash (heap-buffer-overflow).
Déjà vu. This is the same problem that plagued the RTP Streams dialog.
This patch is based on the fix in v1.99.3rc0-33-g2c65b33
(mcaststream_dlg_update confused GList vs. mcaststream_tapinfo_t).
After fixing that, the dialog crashed shortly after setting parameters
(heap-use-after-free). That fix is based on v1.99.10rc0-292-gb02a0ee
(after a retap, the old items were still present in the list).
Just that change was not enough as clearing the list still triggered a
signal, possibly because of the "changed" signal (while the RTP player
uses a selection setter function). Apply the patch based on
v1.99.10rc0-270-g01bd832 (disable selection while clearing).
Change-Id: I152bac6f954d8d1c5c20d6c7d56a196c3e20c681
Reviewed-on: https://code.wireshark.org/review/12227
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Diffstat (limited to 'ui/qt/multicast_statistics_dialog.h')
-rw-r--r-- | ui/qt/multicast_statistics_dialog.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/ui/qt/multicast_statistics_dialog.h b/ui/qt/multicast_statistics_dialog.h index 5e6a56d7f3..530761d163 100644 --- a/ui/qt/multicast_statistics_dialog.h +++ b/ui/qt/multicast_statistics_dialog.h @@ -23,6 +23,7 @@ #define MULTICASTSTATISTICSDIALOG_H #include "tap_parameter_dialog.h" +#include "ui/mcast_stream.h" class SyntaxLineEdit; @@ -44,8 +45,8 @@ private: QList<QWidget *> line_edits_; // Callbacks for register_tap_listener - static void tapReset(void *mti_ptr); - static void tapDraw(void *mti_ptr); + static void tapReset(mcaststream_tapinfo_t *tapinfo); + static void tapDraw(mcaststream_tapinfo_t *tapinfo); virtual const QString filterExpression(); |