aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/megaco
diff options
context:
space:
mode:
authorGerald Combs <gerald@wireshark.org>2005-05-30 15:51:03 +0000
committerGerald Combs <gerald@wireshark.org>2005-05-30 15:51:03 +0000
commitb133b98f15840eb75e2c9b4a3f61ea1fa73cb822 (patch)
treebf7f01ae6388b4ba391e2b7e69b07a4f2d37cc1d /plugins/megaco
parent2edd8a7a000d6ef9fca7c9884fa0289c28713e1b (diff)
Break out of an infinite loop. Fixes bugs 213 & 214.
svn path=/trunk/; revision=14487
Diffstat (limited to 'plugins/megaco')
-rw-r--r--plugins/megaco/packet-megaco.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/plugins/megaco/packet-megaco.c b/plugins/megaco/packet-megaco.c
index 090ac62ae2..fcdb93d943 100644
--- a/plugins/megaco/packet-megaco.c
+++ b/plugins/megaco/packet-megaco.c
@@ -1172,7 +1172,7 @@ dissect_megaco_descriptors(tvbuff_t *tvb, proto_tree *megaco_tree_command_line,
tvb_LBRKT = tvb_previous_offset;
tvb_RBRKT = tvb_previous_offset;
-
+
} while ( tvb_current_offset < tvb_descriptors_end_offset );
}
@@ -1719,15 +1719,15 @@ dissect_megaco_signaldescriptor(tvbuff_t *tvb, packet_info *pinfo, proto_tree *m
tvb_current_offset = tvb_find_guint8(tvb, tvb_RBRKT,
tvb_signals_end_offset, ',');
- if (tvb_current_offset == -1 || tvb_current_offset > tvb_signals_end_offset ){
+ if (tvb_current_offset == -1 || tvb_current_offset > tvb_signals_end_offset || tvb_current_offset < tvb_previous_offset){
tvb_current_offset = tvb_signals_end_offset;
}
-
+
tvb_previous_offset = tvb_skip_wsp(tvb, tvb_current_offset+1);
-
+
tvb_LBRKT = tvb_previous_offset;
tvb_RBRKT = tvb_previous_offset;
-
+
} while ( tvb_current_offset < tvb_signals_end_offset );
}