if pointer==0, the section starts immediately

don't add an empty fragment to the list

this should fix the asserts reported in
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9325
and
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8352

svn path=/trunk/; revision=52969
This commit is contained in:
Martin Kaiser 2013-10-29 21:50:21 +00:00
parent 41182561dd
commit 733713b4b1
1 changed files with 7 additions and 2 deletions

View File

@ -681,8 +681,13 @@ mp2t_process_fragmented_payload(tvbuff_t *tvb, gint offset, guint remaining_len,
return;
}
/* Looks like we already have some stuff in the buffer */
if (fragmentation) {
/* "pointer" contains the number of bytes until the
* start of the new section
* if the new section does not start immediately after the
* pointer field (i.e. pointer>0), the remaining bytes before the
* start of the section are another fragment of the
* current packet */
if (pointer>0 && fragmentation) {
mp2t_fragment_handle(tvb, offset, pinfo, tree, frag_id, frag_cur_pos,
pointer, TRUE, pid_analysis->pload_type);
frag_id++;