test: fix buffer overrun issue
authorLeandro Dorileo <leandro.maciel.dorileo@intel.com>
Thu, 15 Jan 2015 13:24:57 +0000 (11:24 -0200)
committerLeandro Dorileo <leandro.maciel.dorileo@intel.com>
Thu, 15 Jan 2015 13:24:57 +0000 (11:24 -0200)
Make sure we don't run o buffer overrun by setting the status if we
don't know the passed value:

Pointed out by coverity tests: https://bugs.tizen.org/jira/browse/TC-2097

src/bin/test.c
src/lib/lightmediascanner.h

index 010138c..c8a1557 100644 (file)
@@ -276,6 +276,7 @@ progress(lms_t *lms, const char *path, int path_len, lms_progress_status_t statu
         "ERROR_PARSE",
         "ERROR_COMM",
         "SKIPPED",
+        "UNKNOWN",
     };
     const char *cstart = "", *cend = "", *name = data;
 
@@ -296,6 +297,9 @@ progress(lms_t *lms, const char *path, int path_len, lms_progress_status_t statu
         case LMS_PROGRESS_STATUS_ERROR_COMM:
             cstart = "\033[31m";
             break;
+        default:
+            status = LMS_PROGRESS_STATUS_UNKNOWN;
+            break;
         }
     }
 
index ec1601a..d159bc8 100644 (file)
@@ -171,7 +171,8 @@ extern "C" {
         LMS_PROGRESS_STATUS_KILLED,
         LMS_PROGRESS_STATUS_ERROR_PARSE,
         LMS_PROGRESS_STATUS_ERROR_COMM,
-        LMS_PROGRESS_STATUS_SKIPPED
+        LMS_PROGRESS_STATUS_SKIPPED,
+        LMS_PROGRESS_STATUS_UNKNOWN,
     } lms_progress_status_t;
 
     typedef void (*lms_free_callback_t)(void *data);