diff options
author | Stig Bjørlykke <stig@bjorlykke.org> | 2016-12-10 13:07:06 +0100 |
---|---|---|
committer | Roland Knall <rknall@gmail.com> | 2016-12-10 14:42:55 +0000 |
commit | 00223bc5b9f3c34a365759fceb49684b4496051a (patch) | |
tree | 6a51a9e7b5b4ad4e98884eb968e5aae510fbf621 /ui/qt | |
parent | 6a4226e2bfb7340e9c824e17c4b39f535ee84abe (diff) |
Qt: Avoid infinite recursion in ExtcapArgument::loadValues
If configuring a extcap "value" sentence with {value=} then loadValues()
must not run in a infinite recursion trying to find it's children.
Change-Id: Ic2577b31d9312e8f6a099c4fe7c0672e801dbc89
Reviewed-on: https://code.wireshark.org/review/19192
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Roland Knall <rknall@gmail.com>
Diffstat (limited to 'ui/qt')
-rw-r--r-- | ui/qt/extcap_argument.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/ui/qt/extcap_argument.cpp b/ui/qt/extcap_argument.cpp index 72734b7bc6..0775422650 100644 --- a/ui/qt/extcap_argument.cpp +++ b/ui/qt/extcap_argument.cpp @@ -591,7 +591,7 @@ ExtcapValueList ExtcapArgument::loadValues(QString parent) if (v == NULL || v->display == NULL || v->call == NULL ) break; - QString valParent(v->parent == 0 ? "" : QString().fromUtf8(v->parent)); + QString valParent = QString().fromUtf8(v->parent); if ( parent.compare(valParent) == 0 ) { @@ -602,7 +602,9 @@ ExtcapValueList ExtcapArgument::loadValues(QString parent) ExtcapValue element = ExtcapValue(display, call, v->enabled == (gboolean)TRUE, v->is_default == (gboolean)TRUE); - element.setChildren(this->loadValues(call)); + if (!call.isEmpty()) + element.setChildren(this->loadValues(call)); + elements.append(element); } } |