File tree Expand file tree Collapse file tree 1 file changed +7
-4
lines changed
src/lib/exercises/src/hackerrank/warmup Expand file tree Collapse file tree 1 file changed +7
-4
lines changed Original file line number Diff line number Diff line change @@ -47,21 +47,24 @@ char *HACKERRANK_WARMUP_timeConversion(const char *s) {
47
47
char * meridian = HACKERRANK_WARMUP_getLast (s , 2 );
48
48
char * hour_str = HACKERRANK_WARMUP_getFirst (s , 2 );
49
49
50
- char * time_str = malloc (strlen (s ) + 1 );
50
+ size_t s_len = strlen (s );
51
+ char * time_str = malloc (s_len + 1 );
51
52
if (time_str == NULL ) {
52
53
free (meridian );
53
54
free (hour_str );
54
55
return NULL ;
55
56
}
56
57
57
- strcpy (time_str , s );
58
+ strncpy (time_str , s , s_len + 1 );
58
59
char * temp_time_str ;
59
60
unsigned long time_str_len = strlen (time_str );
60
61
temp_time_str = HACKERRANK_WARMUP_getLast (time_str , time_str_len - 2 );
61
- strcpy (time_str , temp_time_str );
62
+ strncpy (time_str , temp_time_str , time_str_len - 2 );
63
+ time_str [time_str_len - 2 ] = '\0' ;
62
64
free (temp_time_str );
63
65
temp_time_str = HACKERRANK_WARMUP_getFirst (time_str , time_str_len - 2 );
64
- strcpy (time_str , temp_time_str );
66
+ strncpy (time_str , temp_time_str , time_str_len - 2 );
67
+ time_str [time_str_len - 2 ] = '\0' ;
65
68
free (temp_time_str );
66
69
67
70
char * endptr ;
You can’t perform that action at this time.
0 commit comments