tests: Add error check to be more robust
authorSam Nelson <sam.nelson@ti.com>
Tue, 8 Oct 2019 04:51:51 +0000 (00:51 -0400)
committerSam Nelson <sam.nelson@ti.com>
Tue, 8 Oct 2019 19:51:06 +0000 (15:51 -0400)
Signed-off-by: Sam Nelson <sam.nelson@ti.com>
packages/ti/ipc/tests/messageq_fault.c
packages/ti/ipc/tests/messageq_multi.c
packages/ti/ipc/tests/messageq_multimulti.c
packages/ti/ipc/tests/messageq_single.c
packages/ti/ipc/tests/ping_tasks.c

index 35f2c9be83f24a71823e39d0536a533d6e606463..7298062cf716c97c927a2f5ed720a721e2bdf664 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012-2017, Texas Instruments Incorporated
+ * Copyright (c) 2012-2019, Texas Instruments Incorporated
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -58,7 +58,7 @@
 
 Int32 fxnFault(UInt32 faultId)
 {
-    Int32 a;
+    Int32 a=0;
     Void (*fxn)(void) = (Void (*)())0x96000000;
     volatile Int dummy = 0;
 
@@ -123,6 +123,7 @@ Void tsk1Fxn(UArg arg0, UArg arg1)
     messageQ = MessageQ_create(localQueueName, NULL);
     if (messageQ == NULL) {
         System_abort("MessageQ_create failed\n");
+        return;
     }
 
     System_printf("tsk1Fxn: created MessageQ: %s; QueueID: 0x%x\n",
@@ -133,6 +134,8 @@ Void tsk1Fxn(UArg arg0, UArg arg1)
         System_printf("Awaiting sync message from host...\n");
         MessageQ_get(messageQ, &msg, MessageQ_FOREVER);
 
+        Assert_isTrue(msg != NULL, NULL);
+
         params = MessageQ_payload(msg);
         numLoops = params[0];
         print = params[1];
index 5263d9258a7bb9af17014270b4b09d372a150a38..a9963ece4921f981546246d96f5c692ed4aa0e8a 100644 (file)
@@ -81,6 +81,7 @@ Void loopbackFxn(UArg arg0, UArg arg1)
     messageQ = MessageQ_create(localQueueName, NULL);
     if (messageQ == NULL) {
         System_abort("MessageQ_create failed\n");
+        return;
     }
 
     System_printf("loopbackFxn: created MessageQ: %s; QueueID: 0x%x\n",
@@ -90,8 +91,10 @@ Void loopbackFxn(UArg arg0, UArg arg1)
     while (msgId < NUMLOOPS) {
         /* Get a message */
         status = MessageQ_get(messageQ, &getMsg, MessageQ_FOREVER);
-        if (status != MessageQ_S_SUCCESS) {
-           System_abort("This should not happen since timeout is forever\n");
+        if ((status != MessageQ_S_SUCCESS)
+            || (getMsg == NULL)) {
+            System_abort("This should not happen since timeout is forever\n");
+            return;
         }
         remoteQueueId = MessageQ_getReplyQueue(getMsg);
 
index 746deba7f7182c16834b1c5f98e8d9d5e4ba830b..f86e27e9f26fb9814e54d0783711524d82030499 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012-2014, Texas Instruments Incorporated
+ * Copyright (c) 2012-2019, Texas Instruments Incorporated
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -83,6 +83,7 @@ Void loopbackFxn(UArg arg0, UArg arg1)
     messageQ = MessageQ_create(localQueueName, NULL);
     if (messageQ == NULL) {
         System_abort("MessageQ_create failed\n");
+        return;
     }
 
     System_printf("loopbackFxn: created MessageQ: %s; QueueID: 0x%x\n",
@@ -92,8 +93,10 @@ Void loopbackFxn(UArg arg0, UArg arg1)
     while (msgId < NUMLOOPS) {
         /* Get a message */
         status = MessageQ_get(messageQ, &getMsg, MessageQ_FOREVER);
-        if (status != MessageQ_S_SUCCESS) {
-           System_abort("This should not happen since timeout is forever\n");
+        if ((status != MessageQ_S_SUCCESS)
+            || (getMsg == NULL)) {
+            System_abort("This should not happen since timeout is forever\n");
+            return;
         }
         remoteQueueId = MessageQ_getReplyQueue(getMsg);
 
index 2bebc2e9d8ddad9500142900ae09ec7b865da12d..696e1bfd846d26fb97525d56e683765ae0d6eabf 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012-2014, Texas Instruments Incorporated
+ * Copyright (c) 2012-2019, Texas Instruments Incorporated
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -79,6 +79,7 @@ Void tsk1Fxn(UArg arg0, UArg arg1)
     messageQ = MessageQ_create(localQueueName, NULL);
     if (messageQ == NULL) {
         System_abort("MessageQ_create failed\n");
+        return;
     }
 
     System_printf("tsk1Fxn: created MessageQ: %s; QueueID: 0x%x\n",
@@ -89,6 +90,7 @@ Void tsk1Fxn(UArg arg0, UArg arg1)
         System_printf("Awaiting sync message from host...\n");
         MessageQ_get(messageQ, &msg, MessageQ_FOREVER);
 
+        Assert_isTrue(msg != NULL, NULL);
         params = MessageQ_payload(msg);
         numLoops = params[0];
         print = params[1];
@@ -109,6 +111,7 @@ Void tsk1Fxn(UArg arg0, UArg arg1)
         for (i = 1; i <= numLoops; i++) {
             status = MessageQ_get(messageQ, &msg, MessageQ_FOREVER);
             Assert_isTrue(status == MessageQ_S_SUCCESS, NULL);
+            Assert_isTrue(msg != NULL, NULL);
 
             params = MessageQ_payload(msg);
             msgId = params[0];
index 4f4026a57acd9017ae621ec1ef9dee49cbe25f54..2c6be40649e864c605365cb2ee57f00ea8af78f3 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2011-2013, Texas Instruments Incorporated
+ * Copyright (c) 2011-2019, Texas Instruments Incorporated
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -69,6 +69,10 @@ Void copyTaskFxn(UArg arg0, UArg arg1)
 
     /* Create the messageQ for receiving (and get our endpoint for sending). */
     handle = RPMessage_create(arg0, NULL, NULL, &myEndpoint);
+    if (handle == NULL) {
+        System_printf("RPMessage_create failed...\n");
+        return;
+    }
 
     System_sprintf(desc, "sample%d", arg1);