SDOCM00115768 Incorrect check for invalid pointer in Ipc_detach
[ipc/ipcdev.git] / packages / ti / sdo / ipc / Ipc.c
index 9e67d389913ff606a7c9f8f3c703a83d65b04d73..a424886719996ab56ce6e4504dd0833967552756 100644 (file)
@@ -518,7 +518,7 @@ Int Ipc_detach(UInt16 remoteProcId)
             return (Ipc_E_FAIL);
         }
 
-        if (slave->transportSRPtr) {
+        if (slave->transportSRPtr != SharedRegion_invalidSRPtr()) {
             /* free the memory if slave processor */
             if (MultiProc_self() < remoteProcId) {
                 /* get the pointer to MessageQ transport instance */
@@ -544,7 +544,7 @@ Int Ipc_detach(UInt16 remoteProcId)
             return (Ipc_E_FAIL);
         }
 
-        if (slave->nsrnSRPtr) {
+        if (slave->nsrnSRPtr != SharedRegion_invalidSRPtr()) {
             /* free the memory if slave processor */
             if (MultiProc_self() < remoteProcId) {
                 /* get the pointer to NSRN instance */
@@ -570,7 +570,7 @@ Int Ipc_detach(UInt16 remoteProcId)
             return (Ipc_E_FAIL);
         }
 
-        if (slave->notifySRPtr) {
+        if (slave->notifySRPtr != SharedRegion_invalidSRPtr()) {
             /* free the memory if slave processor */
             if (MultiProc_self() < remoteProcId) {
                 /* get the pointer to Notify instance */