diff options
author | Jörg Mayer <jmayer@loplof.de> | 2006-07-27 14:19:10 +0000 |
---|---|---|
committer | Jörg Mayer <jmayer@loplof.de> | 2006-07-27 14:19:10 +0000 |
commit | 5c8bb9bca89f4023f0ba6b0f59650b3b539fa28e (patch) | |
tree | bac46536715790fe251366db5b520fdaf45f22cd /gtk | |
parent | 912cfcd1da119b36a048c6cfb736b126c63d2a26 (diff) |
Alex Shnitman <AlexS@mangodsp.com>
Below is a patch for a bug in rtp_analysis.c. The variable
statinfo->delta_timestamp was not initialized in all the
necessary cases. The function rtp_packet_save_payload uses this
variable and the for loop on line 935 could use an old value
and run an incorrect amount of times, e.g. a couple billion,
which gets ethereal stuck. I can supply an example capture
which causes it. The patch solves the problem.
svn path=/trunk/; revision=18798
Diffstat (limited to 'gtk')
-rw-r--r-- | gtk/rtp_analysis.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gtk/rtp_analysis.c b/gtk/rtp_analysis.c index 4b37fc7941..f285ad9079 100644 --- a/gtk/rtp_analysis.c +++ b/gtk/rtp_analysis.c @@ -690,8 +690,8 @@ int rtp_packet_analyse(tap_rtp_stat_t *statinfo, } /* is it a packet with the mark bit set? */ if (rtpinfo->info_marker_set) { + statinfo->delta_timestamp = rtpinfo->info_timestamp - statinfo->timestamp; if (rtpinfo->info_timestamp > statinfo->timestamp){ - statinfo->delta_timestamp = rtpinfo->info_timestamp - statinfo->timestamp; statinfo->flags |= STAT_FLAG_MARKER; } else{ |