IOT-2539 clean unused-result warnings 23/22923/3
authorGeorge Nash <george.nash@intel.com>
Thu, 19 Oct 2017 20:35:05 +0000 (13:35 -0700)
committerRick Bell <richard.s.bell@intel.com>
Fri, 20 Oct 2017 23:19:36 +0000 (23:19 +0000)
the -Werror=unused-result is due to not checking the return
value when using scanf. This error is specific to certan
versions of the compiler and may not occure on all systems.

Bug: https://jira.iotivity.org/browse/IOT-2539
Change-Id: Ifcaa05f7f7df69da84bd3a514ad3f29a63955b02
Signed-off-by: George Nash <george.nash@intel.com>
resource/csdk/security/provisioning/sample/cloud/cloudWrapper.c
resource/provisioning/examples/cloudClient.cpp
resource/provisioning/examples/cloudWrapper.cpp

index c7e33fd..8aedec8 100644 (file)
@@ -71,14 +71,20 @@ static bool readOptional(const char* description)
 
     while(1)
     {
-        scanf("%c", &choice);
-        skipSpecialCharacters();
+        if(scanf("%c", &choice))
+        {
+            skipSpecialCharacters();
 
-        switch (choice)
+            switch (choice)
+            {
+                case 'y': return true;
+                case 'n': return false;
+                default: printf("Wrong value entered. Please press 'y' or 'n'\n");
+            }
+        }
+        else
         {
-            case 'y': return true;
-            case 'n': return false;
-            default: printf("Wrong value entered. Please press 'y' or 'n'\n");
+            printf("Failed to read input. Please press 'y' or 'n'\n");
         }
     }
     return false;
@@ -89,8 +95,10 @@ void readString(char* item, int length, const char* description, const char* exa
     printf("Enter %s (f.e. %s):\n", description, example);
     char template[8] = { 0 };
     snprintf(template, sizeof(template), "%%%ds", length - 1);
-    scanf(template, item);
-    skipSpecialCharacters();
+    if (scanf(template, item))
+    {
+        skipSpecialCharacters();
+    }
 }
 
 /**
@@ -112,15 +120,19 @@ static void readOptionalString(char* item, int length, const char* description,
 void readInteger(int* item, const char* description, const char* example)
 {
     printf("Enter %s (f.e. %s):\n", description, example);
-    scanf("%d", item);
-    skipSpecialCharacters();
+    if(scanf("%d", item))
+    {
+        skipSpecialCharacters();
+    }
 }
 
 void readUInt16(uint16_t* item, const char* description, const char* example)
 {
     printf("Enter %s (f.e. %s):\n", description, example);
-    scanf("%hu", item);
-    skipSpecialCharacters();
+    if (scanf("%hu", item))
+    {
+        skipSpecialCharacters();
+    }
 }
 
 /**
index 02ee443..91d9c28 100644 (file)
@@ -271,7 +271,10 @@ static void userRequests(void *data)
         printMenu();
 
         int request = 0;
-        scanf("%d", &request);
+        if (!scanf("%d", &request))
+        {
+            continue;
+        }
         getchar();
 
         switch (request)
index 64e86fb..6fbc5c8 100644 (file)
@@ -61,14 +61,20 @@ static bool readOptional(const char* description)
 
     while(1)
     {
-        scanf("%c", &choice);
-        getchar();
+        if (scanf("%c", &choice))
+        {
+            getchar();
 
-        switch (choice)
+            switch (choice)
+            {
+                case 'y': return true;
+                case 'n': return false;
+                default: printf("Wrong value entered. Please press 'y' or 'n'\n");
+            }
+        }
+        else
         {
-            case 'y': return true;
-            case 'n': return false;
-            default: printf("Wrong value entered. Please press 'y' or 'n'\n");
+            printf("Failed to read input. Please press 'y' or 'n'\n");
         }
     }
     return false;
@@ -87,8 +93,10 @@ void readString(char* item, int length, const char* description, const char* exa
     printf("Enter %s (f.e. %s):\n", description, example);
     char temp[8] = { 0 };
     snprintf(temp, sizeof(temp), "%%%ds", length - 1);
-    scanf(temp, item);
-    getchar();
+    if (scanf(temp, item) )
+    {
+        getchar();
+    }
 }
 
 /**
@@ -117,8 +125,10 @@ static void readOptionalString(char* item, int length, const char* description,
 void readInteger(int* item, const char* description, const char* example)
 {
     printf("Enter %s (f.e. %s):\n", description, example);
-    scanf("%d", item);
-    getchar();
+    if (scanf("%d", item))
+    {
+        getchar();
+    }
 }
 
 /**