diff options
-rw-r--r-- | sys/compat/ndis/subr_ndis.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/compat/ndis/subr_ndis.c b/sys/compat/ndis/subr_ndis.c index ccda640..ec61024 100644 --- a/sys/compat/ndis/subr_ndis.c +++ b/sys/compat/ndis/subr_ndis.c @@ -1464,9 +1464,11 @@ ndis_map_iospace(vaddr, adapter, paddr, len) block = (ndis_miniport_block *)adapter; sc = (struct ndis_softc *)(block->nmb_ifp); - if (paddr.np_quad == rman_get_start(sc->ndis_res_mem)) + if (sc->ndis_res_mem != NULL && + paddr.np_quad == rman_get_start(sc->ndis_res_mem)) *vaddr = (void *)rman_get_virtual(sc->ndis_res_mem); - else if (paddr.np_quad == rman_get_start(sc->ndis_res_altmem)) + else if (sc->ndis_res_altmem != NULL && + paddr.np_quad == rman_get_start(sc->ndis_res_altmem)) *vaddr = (void *)rman_get_virtual(sc->ndis_res_altmem); else return(NDIS_STATUS_FAILURE); |