/* file.c
* File I/O routines
*
- * $Id: file.c,v 1.117 1999/11/06 06:26:55 guy Exp $
+ * $Id: file.c,v 1.118 1999/11/06 06:54:21 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
gtk_tree_clear_items(GTK_TREE(tree_view), 0, -1);
}
-void
+gboolean
find_packet(capture_file *cf, dfilter *sfcode)
{
frame_data *start_fd;
if (!gtk_clist_row_is_visible(GTK_CLIST(packet_list), new_fd->row))
gtk_clist_moveto(GTK_CLIST(packet_list), new_fd->row, -1, 0.0, 0.0);
gtk_clist_select_row(GTK_CLIST(packet_list), new_fd->row, -1);
- }
+ return TRUE; /* success */
+ } else
+ return FALSE; /* failure */
}
/* Select the packet on a given row. */
/* file.h
* Definitions for file structures and routines
*
- * $Id: file.h,v 1.50 1999/11/06 06:26:57 guy Exp $
+ * $Id: file.h,v 1.51 1999/11/06 06:54:24 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
void colorize_packets(capture_file *);
int print_packets(capture_file *cf, print_args_t *print_args);
void change_time_formats(capture_file *);
-void find_packet(capture_file *cf, dfilter *sfcode);
+gboolean find_packet(capture_file *cf, dfilter *sfcode);
void select_packet(capture_file *, int);
void unselect_packet(capture_file *);
/* find_dlg.c
* Routines for "find frame" window
*
- * $Id: find_dlg.c,v 1.2 1999/11/06 06:42:41 guy Exp $
+ * $Id: find_dlg.c,v 1.3 1999/11/06 06:54:02 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
cf.sbackward = GTK_TOGGLE_BUTTON (backward_rb)->active;
- gtk_widget_destroy(GTK_WIDGET(parent_w));
+ if (!find_packet(&cf, sfcode)) {
+ /* We didn't find the packet. */
+ simple_dialog(ESD_TYPE_WARN, NULL, "No packet matched that filter.");
+ return;
+ }
- find_packet(&cf, sfcode);
+ gtk_widget_destroy(GTK_WIDGET(parent_w));
}
static void