diff options
author | sam <sam@FreeBSD.org> | 2009-04-09 16:53:59 +0000 |
---|---|---|
committer | sam <sam@FreeBSD.org> | 2009-04-09 16:53:59 +0000 |
commit | 72be4f0804adc397bab3f63b91ee2ed5d71614b4 (patch) | |
tree | 9b67ea3bf88e25d15e10f2b0bc2eed263f2c3159 | |
parent | 3d066da09825b54d2cbf056eb2086d7ebd5d043a (diff) | |
download | FreeBSD-src-72be4f0804adc397bab3f63b91ee2ed5d71614b4.zip FreeBSD-src-72be4f0804adc397bab3f63b91ee2ed5d71614b4.tar.gz |
check the method pointer before invoking ah_eepromDetach as it can
be null if attach work fails before hooking up the eeprom support
Obtained from: madwifi
-rw-r--r-- | sys/dev/ath/ath_hal/ah_internal.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/ath/ath_hal/ah_internal.h b/sys/dev/ath/ath_hal/ah_internal.h index 8b00e30..ef5aba5 100644 --- a/sys/dev/ath/ath_hal/ah_internal.h +++ b/sys/dev/ath/ath_hal/ah_internal.h @@ -333,8 +333,10 @@ struct ath_hal_private { #define ath_hal_disablePCIE(_ah) \ (_ah)->ah_disablePCIE(_ah) -#define ath_hal_eepromDetach(_ah) \ - AH_PRIVATE(_ah)->ah_eepromDetach(_ah) +#define ath_hal_eepromDetach(_ah) do { \ + if (AH_PRIVATE(_ah)->ah_eepromDetach != AH_NULL) \ + AH_PRIVATE(_ah)->ah_eepromDetach(_ah); \ +} while (0) #define ath_hal_eepromGet(_ah, _param, _val) \ AH_PRIVATE(_ah)->ah_eepromGet(_ah, _param, _val) #define ath_hal_eepromSet(_ah, _param, _val) \ |