aboutsummaryrefslogtreecommitdiffstats
path: root/capture.c
diff options
context:
space:
mode:
Diffstat (limited to 'capture.c')
-rw-r--r--capture.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/capture.c b/capture.c
index 12ab9cfa41..a0bc013be6 100644
--- a/capture.c
+++ b/capture.c
@@ -281,29 +281,29 @@ capture_input_closed(capture_options *capture_opts)
simple_dialog_primary_start(), simple_dialog_primary_end(),
cf_is_tempfile(capture_opts->cf) ? "temporary " : "");
cf_close(capture_opts->cf);
- /* we have closed the capture file, don't call cf_cb_live_capture_finished! */
- } else {
- cf_callback_invoke(cf_cb_live_capture_finished, capture_opts->cf);
}
break;
case CF_READ_ERROR:
/* Just because we got an error, that doesn't mean we were unable
to read any of the file; we handle what we could get from the
file. */
- cf_callback_invoke(cf_cb_live_capture_finished, capture_opts->cf);
break;
case CF_READ_ABORTED:
/* Exit by leaving the main loop, so that any quit functions
we registered get called. */
main_window_quit();
- cf_callback_invoke(cf_cb_live_capture_finished, capture_opts->cf);
}
} else {
/* this is a normal mode capture, read in the capture file data */
capture_input_read_all(capture_opts, cf_is_tempfile(capture_opts->cf),
cf_get_drops_known(capture_opts->cf), cf_get_drops(capture_opts->cf));
+ }
+
+ /* if we have captured some packets, call cf_cb_live_capture_finished! */
+ /* (otherwise we already have called cf_close) */
+ if(cf_packet_count(capture_opts->cf) != 0) {
cf_callback_invoke(cf_cb_live_capture_finished, capture_opts->cf);
}