From 98d79569e0c417fa6380728f3cdc2cf0bc68cf47 Mon Sep 17 00:00:00 2001 From: Balint Reczey Date: Sat, 22 Aug 2009 22:49:59 +0000 Subject: [PATCH] From Rob Leslie : [PATCH] Fix dumpcap believing error on ^C i.e. pcap_breakloop() When ^C was pressed during a packet capture, dumpcap believed a pcap error had occurred. We check the return value more closely to avoid this problem. svn path=/trunk/; revision=29510 --- dumpcap.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/dumpcap.c b/dumpcap.c index 92e4c99d18..556159e3a6 100644 --- a/dumpcap.c +++ b/dumpcap.c @@ -1615,7 +1615,10 @@ capture_loop_dispatch(capture_options *capture_opts _U_, loop_data *ld, inpkts = pcap_dispatch(ld->pcap_h, 1, capture_loop_packet_cb, (u_char *)ld); if (inpkts < 0) { - ld->pcap_err = TRUE; + if (inpkts == -1) { + /* Error, rather than pcap_breakloop(). */ + ld->pcap_err = TRUE; + } ld->go = FALSE; /* error or pcap_breakloop() - stop capturing */ } } else {