diff options
-rw-r--r-- | wilink_6_1/platforms/os/linux/src/osapi.c | 9 | ||||
-rw-r--r-- | wilink_6_1/stad/src/Ctrl_Interface/DrvMain.c | 5 |
2 files changed, 13 insertions, 1 deletions
diff --git a/wilink_6_1/platforms/os/linux/src/osapi.c b/wilink_6_1/platforms/os/linux/src/osapi.c index 4bdae8d..fd99089 100644 --- a/wilink_6_1/platforms/os/linux/src/osapi.c +++ b/wilink_6_1/platforms/os/linux/src/osapi.c @@ -737,7 +737,8 @@ void *os_SignalObjectCreate (TI_HANDLE OsContext) { struct completion *myPtr; myPtr = os_memoryAlloc(OsContext, sizeof(struct completion)); - init_completion (myPtr); + if (myPtr) + init_completion (myPtr); return (myPtr); } @@ -753,6 +754,8 @@ Return Value: TI_OK -----------------------------------------------------------------------------*/ int os_SignalObjectWait (TI_HANDLE OsContext, void *signalObject) { + if (!signalObject) + return TI_NOK; wait_for_completion ((struct completion *)signalObject); return TI_OK; } @@ -769,6 +772,8 @@ Return Value: TI_OK -----------------------------------------------------------------------------*/ int os_SignalObjectSet (TI_HANDLE OsContext, void *signalObject) { + if (!signalObject) + return TI_NOK; complete ((struct completion *)signalObject); return TI_OK; } @@ -785,6 +790,8 @@ Return Value: TI_OK -----------------------------------------------------------------------------*/ int os_SignalObjectFree (TI_HANDLE OsContext, void *signalObject) { + if (!signalObject) + return TI_NOK; os_memoryFree(OsContext, signalObject, sizeof(struct completion)); return TI_OK; } diff --git a/wilink_6_1/stad/src/Ctrl_Interface/DrvMain.c b/wilink_6_1/stad/src/Ctrl_Interface/DrvMain.c index 00ae174..257cf20 100644 --- a/wilink_6_1/stad/src/Ctrl_Interface/DrvMain.c +++ b/wilink_6_1/stad/src/Ctrl_Interface/DrvMain.c @@ -1266,6 +1266,7 @@ TI_STATUS drvMain_InsertAction (TI_HANDLE hDrvMain, EActionType eAction) /* Free signalling object */ os_SignalObjectFree (pDrvMain->tStadHandles.hOs, pDrvMain->hSignalObj); + pDrvMain->hSignalObj = NULL; if (pDrvMain->eSmState == SM_STATE_FAILED) return TI_NOK; @@ -1292,7 +1293,11 @@ TI_STATUS drvMain_Recovery (TI_HANDLE hDrvMain) if (!pDrvMain->bRecovery) { TRACE1(pDrvMain->tStadHandles.hReport, REPORT_SEVERITY_CONSOLE,".....drvMain_Recovery, ts=%d\n", os_timeStampMs(pDrvMain->tStadHandles.hOs)); +#ifdef REPORT_LOG WLAN_OS_REPORT((".....drvMain_Recovery, ts=%d\n", os_timeStampMs(pDrvMain->tStadHandles.hOs))); +#else + printk("%s\n",__func__); +#endif pDrvMain->bRecovery = TI_TRUE; drvMain_SmEvent (hDrvMain, SM_EVENT_RECOVERY); return TI_OK; |