]> The Tcpdump Group git mirrors - libpcap/commitdiff
Move the freeing of "p->dlt_list" to the proper place.
authorguy <guy>
Thu, 16 Jan 2003 07:44:27 +0000 (07:44 +0000)
committerguy <guy>
Thu, 16 Jan 2003 07:44:27 +0000 (07:44 +0000)
pcap.c

diff --git a/pcap.c b/pcap.c
index 28847372e0c3b38c44ed4539a9f2525bf60642d7..281639cdf0c013a97b00be9246a1377502ec600b 100644 (file)
--- a/pcap.c
+++ b/pcap.c
@@ -33,7 +33,7 @@
 
 #ifndef lint
 static const char rcsid[] =
 
 #ifndef lint
 static const char rcsid[] =
-    "@(#) $Header: /tcpdump/master/libpcap/pcap.c,v 1.43 2003-01-03 08:34:46 guy Exp $ (LBL)";
+    "@(#) $Header: /tcpdump/master/libpcap/pcap.c,v 1.44 2003-01-16 07:44:27 guy Exp $ (LBL)";
 #endif
 
 #ifdef HAVE_CONFIG_H
 #endif
 
 #ifdef HAVE_CONFIG_H
@@ -448,8 +448,6 @@ pcap_setnonblock(pcap_t *p, int nonblock, char *errbuf)
 #else
        int newtimeout;
 #endif
 #else
        int newtimeout;
 #endif
-       if (p->dlt_list != NULL)
-               free(p->dlt_list);
 
        if (p->sf.rfile != NULL) {
                /*
 
        if (p->sf.rfile != NULL) {
                /*
@@ -591,6 +589,8 @@ pcap_close(pcap_t *p)
                        free(p->sf.base);
        } else if (p->buffer != NULL)
                free(p->buffer);
                        free(p->sf.base);
        } else if (p->buffer != NULL)
                free(p->buffer);
+       if (p->dlt_list != NULL)
+               free(p->dlt_list);
 
        pcap_freecode(&p->fcode);
        free(p);
 
        pcap_freecode(&p->fcode);
        free(p);