diff options
author | weongyo <weongyo@FreeBSD.org> | 2009-03-24 04:20:17 +0000 |
---|---|---|
committer | weongyo <weongyo@FreeBSD.org> | 2009-03-24 04:20:17 +0000 |
commit | 3fcdfbc383e91432caa32d7171559fe6f39aaf97 (patch) | |
tree | dcb79afa0b646832165fd6aa0e19cf0b2ed168e6 | |
parent | 635596f1dbc16eddb2609ccdf02ae83ed880e55b (diff) | |
download | FreeBSD-src-3fcdfbc383e91432caa32d7171559fe6f39aaf97.zip FreeBSD-src-3fcdfbc383e91432caa32d7171559fe6f39aaf97.tar.gz |
set NULL after free to avoid duplicate free.
Tested by: Ganbold <ganbold_at_micom.mng.net>
-rw-r--r-- | sys/dev/if_ndis/if_ndis.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/dev/if_ndis/if_ndis.c b/sys/dev/if_ndis/if_ndis.c index 976253c..8cc2ede 100644 --- a/sys/dev/if_ndis/if_ndis.c +++ b/sys/dev/if_ndis/if_ndis.c @@ -3250,8 +3250,10 @@ ndis_stop(sc) NDIS_LOCK(sc); for (i = 0; i < NDIS_EVENTS; i++) { - if (sc->ndis_evt[i].ne_sts && sc->ndis_evt[i].ne_buf != NULL) + if (sc->ndis_evt[i].ne_sts && sc->ndis_evt[i].ne_buf != NULL) { free(sc->ndis_evt[i].ne_buf, M_TEMP); + sc->ndis_evt[i].ne_buf = NULL; + } sc->ndis_evt[i].ne_sts = 0; sc->ndis_evt[i].ne_len = 0; } |