diff options
author | Kwang Son <k.son@samsung.com> | 2021-01-06 14:11:09 +0900 |
---|---|---|
committer | Kwang Son <k.son@samsung.com> | 2021-01-06 16:31:44 +0900 |
commit | 3f4f7d4f61c110dc8814910f871f638c99292479 (patch) | |
tree | 558f91b33bddde25da185772f3273fc4b9d9cfea /test/testsuites | |
parent | 658b6c97dd2bc227e409466095837bb9d143292d (diff) | |
download | mediavision-3f4f7d4f61c110dc8814910f871f638c99292479.tar.gz mediavision-3f4f7d4f61c110dc8814910f871f638c99292479.tar.bz2 mediavision-3f4f7d4f61c110dc8814910f871f638c99292479.zip |
Fix gcc warning
- strncpy to strdup : truncation warning
- remove scanf : newline already handled
Change-Id: I63e10dbc8d5130835c2723018fee62a641715bc7
Diffstat (limited to 'test/testsuites')
-rw-r--r-- | test/testsuites/common/testsuite_common/mv_testsuite_common.c | 29 |
1 files changed, 10 insertions, 19 deletions
diff --git a/test/testsuites/common/testsuite_common/mv_testsuite_common.c b/test/testsuites/common/testsuite_common/mv_testsuite_common.c index 7fff8422..d368ef80 100644 --- a/test/testsuites/common/testsuite_common/mv_testsuite_common.c +++ b/test/testsuites/common/testsuite_common/mv_testsuite_common.c @@ -82,23 +82,22 @@ int input_string(const char *prompt, size_t max_len, char **string) if (scanf("\n") != 0) return -1; - + if (max_len > 1024) { + printf("max_len is too large"); + return -1; + } char buffer[max_len]; - int last_char = 0; - buffer[last_char] = '\0'; - buffer[sizeof(buffer) - 1] = ~'\0'; if (NULL == fgets(buffer, sizeof(buffer), stdin)) return -1; - size_t real_string_len = strlen(buffer); - buffer[real_string_len - 1] = '\0'; - *string = (char*)malloc(real_string_len * sizeof(char)); + if (buffer[real_string_len - 1] == '\n') { //fgets read newline to buffer + buffer[real_string_len - 1] = '\0'; + real_string_len--; + } + *string = strdup(buffer); if (*string == NULL) return -1; - - strncpy(*string, buffer, real_string_len); - - return strlen(*string); + return real_string_len; } int input_size(const char *prompt, size_t max_size, size_t *size) @@ -114,8 +113,6 @@ int input_size(const char *prompt, size_t max_size, size_t *size) printf("ERROR: Incorrect input.\n"); return -1; } - scanf("%*[^\n]%*c"); - return (*size > max_size ? -1 : 0); } @@ -132,8 +129,6 @@ int input_int(const char *prompt, int min_value, int max_value, int *value) printf("ERROR: Incorrect input.\n"); return -1; } - scanf("%*[^\n]%*c"); - return (*value < min_value || *value > max_value ? -1 : 0); } @@ -154,8 +149,6 @@ int input_double( printf("ERROR: Incorrect input.\n"); return -1; } - scanf("%*[^\n]%*c"); - return (*value < min_value || *value > max_value ? -1 : 0); } @@ -241,8 +234,6 @@ int show_menu( printf("ERROR: Incorrect input.\n"); return -1; } - scanf("%*[^\n]%*c"); - return selection; } |