aboutsummaryrefslogtreecommitdiffstats
path: root/file.c
diff options
context:
space:
mode:
authorkrj <krj@f5534014-38df-0310-8fa8-9805f1628bb7>2009-09-07 21:07:51 +0000
committerkrj <krj@f5534014-38df-0310-8fa8-9805f1628bb7>2009-09-07 21:07:51 +0000
commit6aed0cd8308c75f3eb8cad94dcbeef8218202462 (patch)
tree305f6ef4d96c5e14e0f692e18b4af8ea338d3c0e /file.c
parent413481209c23483d9b2c0974c1438dbbd8abd104 (diff)
Make sure that reset the elapsed time to load a file before we reload/rescan the file
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@29783 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'file.c')
-rw-r--r--file.c44
1 files changed, 27 insertions, 17 deletions
diff --git a/file.c b/file.c
index c4a8a4b98b..f10920e52a 100644
--- a/file.c
+++ b/file.c
@@ -243,6 +243,29 @@ cf_timestamp_auto_precision(capture_file *cf)
#endif
}
+gulong
+cf_get_computed_elapsed(void)
+{
+ return computed_elapsed;
+}
+
+static void reset_elapsed(void)
+{
+ computed_elapsed = 0;
+}
+
+static void compute_elapsed(GTimeVal *start_time)
+{
+ gdouble delta_time;
+ GTimeVal time_now;
+
+ g_get_current_time(&time_now);
+
+ delta_time = (time_now.tv_sec - start_time->tv_sec) * 1e6 +
+ time_now.tv_usec - start_time->tv_usec;
+
+ computed_elapsed = (gulong) (delta_time / 1000); /* ms*/
+}
cf_status_t
cf_open(capture_file *cf, const char *fname, gboolean is_tempfile, int *err)
@@ -280,6 +303,8 @@ cf_open(capture_file *cf, const char *fname, gboolean is_tempfile, int *err)
/* If it's a temporary capture buffer file, mark it as not saved. */
cf->user_saved = !is_tempfile;
+ reset_elapsed();
+
cf->cd_t = wtap_file_type(cf->wth);
cf->count = 0;
cf->displayed_count = 0;
@@ -428,23 +453,6 @@ void outofmemory_cb(gpointer dialog _U_, gint btn _U_, gpointer data _U_)
main_window_exit();
}
-gulong
-cf_get_computed_elapsed(void){
- return computed_elapsed;
-}
-static void compute_elapsed(GTimeVal *start_time)
-{
- gdouble delta_time;
- GTimeVal time_now;
-
- g_get_current_time(&time_now);
-
- delta_time = (time_now.tv_sec - start_time->tv_sec) * 1e6 +
- time_now.tv_usec - start_time->tv_usec;
-
- computed_elapsed = (gulong) (delta_time / 1000); /* ms*/
-}
-
static float calc_progbar_val(capture_file *cf, gint64 size, gint64 file_pos){
float progbar_val;
@@ -1750,6 +1758,8 @@ rescan_packets(capture_file *cf, const char *action, const char *action_item,
cf->first_displayed = NULL;
cf->last_displayed = NULL;
+ reset_elapsed();
+
/* We currently don't display any packets */
cf->displayed_count = 0;