summaryrefslogtreecommitdiff
path: root/src/shared/dlt_config_file_parser.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/shared/dlt_config_file_parser.c')
-rw-r--r--src/shared/dlt_config_file_parser.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/shared/dlt_config_file_parser.c b/src/shared/dlt_config_file_parser.c
index e701341..7392836 100644
--- a/src/shared/dlt_config_file_parser.c
+++ b/src/shared/dlt_config_file_parser.c
@@ -288,17 +288,21 @@ static int dlt_config_file_get_key_value(char *line, char *str1, char *str2)
ptr = strtok_r(line, delimiter, &save_ptr);
- if (ptr != NULL) /* get key */
- strncpy(str1, ptr, DLT_CONFIG_FILE_ENTRY_MAX_LEN);
- else
+ if (ptr != NULL) { /* get key */
+ strncpy(str1, ptr, DLT_CONFIG_FILE_ENTRY_MAX_LEN - 1);
+ str1[DLT_CONFIG_FILE_ENTRY_MAX_LEN - 1] = '\0';
+ } else {
return -1;
+ }
ptr = strtok_r(NULL, delimiter, &save_ptr);
- if (ptr != NULL)
- strncpy(str2, ptr, DLT_CONFIG_FILE_ENTRY_MAX_LEN);
- else
+ if (ptr != NULL) {
+ strncpy(str2, ptr, DLT_CONFIG_FILE_ENTRY_MAX_LEN - 1);
+ str2[DLT_CONFIG_FILE_ENTRY_MAX_LEN - 1] = '\0';
+ } else {
return -1;
+ }
return 0;
}