diff options
author | Jeff Morriss <jeff.morriss@ulticom.com> | 2012-05-21 17:09:15 +0000 |
---|---|---|
committer | Jeff Morriss <jeff.morriss@ulticom.com> | 2012-05-21 17:09:15 +0000 |
commit | 1828c717431e85ad32aa5bd8dd1e9ab362835457 (patch) | |
tree | a2ae6b880b0942c780eb589c1a40e9ea966f09f0 /file.c | |
parent | 78a170a5066a7e47ad874fdacc8f6ce5dd42c569 (diff) | |
download | wireshark-1828c717431e85ad32aa5bd8dd1e9ab362835457.tar.gz |
Fix https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7270 :
Don't mark frames as dependent upon a displayed frame unless the (supposedly)
displayed frame is actually displayed. (Fix to r41214 <sigh>.)
svn path=/trunk/; revision=42752
Diffstat (limited to 'file.c')
-rw-r--r-- | file.c | 15 |
1 files changed, 10 insertions, 5 deletions
@@ -1127,11 +1127,16 @@ add_packet_to_packet_list(frame_data *fdata, capture_file *cf, if (refilter) { fdata->flags.passed_dfilter = dfilter_apply_edt(dfcode, &edt) ? 1 : 0; - /* This frame passed the display filter but it may depend on other - * (potentially not displayed) frames. Find those frames and mark them - * as depended upon. - */ - g_slist_foreach(edt.pi.dependent_frames, find_and_mark_frame_depended_upon, cf); + if (fdata->flags.passed_dfilter) { + /* This frame passed the display filter but it may depend on other + * (potentially not displayed) frames. Find those frames and mark them + * as depended upon. + * + * (We don't have to do this if we're not filtering--that is, the + * 'else' case below.) + */ + g_slist_foreach(edt.pi.dependent_frames, find_and_mark_frame_depended_upon, cf); + } } } else fdata->flags.passed_dfilter = 1; |