Instead of using a Boolean for the search direction, use an enum, so
authorGuy Harris <guy@alum.mit.edu>
Fri, 13 Aug 2010 07:39:46 +0000 (07:39 -0000)
committerGuy Harris <guy@alum.mit.edu>
Fri, 13 Aug 2010 07:39:46 +0000 (07:39 -0000)
commit2a328da4ef66f37388b841803b2df149b4f68840
tree7e0a10dd76d94da164a22f52bcec418f4cd13667
parent432cfde19c7e1b93ccd4457eb27a501e55525b2b
Instead of using a Boolean for the search direction, use an enum, so
that you can tell from examination whether the search is forward or
backward.

Make the cf_find_packet routines take the direction as an explicit
argument, rather than, in the cases where you don't want to permanently
set the direction, saving the direction in the capture_file structure,
changing it, doing the search, and restoring the saved direction.  Give
more information in the Doxygen comments for those routines.

Add a cf_find_packet_dfilter_string() routine, which takes a filter
string rather than a compiled filter as an argument.  Replace
find_previous_next_frame_with_filter() with it.

Have cf_read_frame_r() and cf_read_frame() pop up the error dialog if
the read fails, rather than leaving that up to its caller.  That lets us
eliminate cf_read_error_message(), by swallowing its code into
cf_read_frame_r().  Add Doxygen comments for cf_read_frame_r() and
cf_read_frame().

Don't have find_packet() read the packet before calling the callback
routine; leave that up to the callback routine.

Add cf_find_packet_marked(), to find the next or previous marked packet,
and cf_find_packet_time_reference(), to find the next or previous time
reference packet.  Those routines do *not* need to read the packet data
to see if it matches; that lets them run much faster.

Clean up indentation.

svn path=/trunk/; revision=33791
15 files changed:
cfile.h
file.c
file.h
gtk/expert_comp_table.c
gtk/filter_utils.c
gtk/find_dlg.c
gtk/find_dlg.h
gtk/iax2_analysis.c
gtk/main.c
gtk/packet_list_store.c
gtk/packet_win.c
gtk/rtp_analysis.c
gtk/sctp_assoc_analyse.c
gtk/tcp_graph.c
proto_hier_stats.c