fixing memleak of input char*
- adding missing free() calls - dont malloc ourselves as getline() also does a malloc (and anyway called realloc before if the size_t was smaller then the actual len(input-line) to behaviour is the same!)
This commit is contained in:
parent
295b44aff4
commit
320c09285c
1 changed files with 7 additions and 4 deletions
|
@ -3,23 +3,26 @@
|
|||
|
||||
int main() {
|
||||
int bytes_read;
|
||||
size_t nbytes = 10;
|
||||
char **my_string = malloc(sizeof(char**));
|
||||
size_t nbytes = 0;
|
||||
char *my_string = NULL;
|
||||
char *password = "23door42\n";
|
||||
|
||||
puts("Please enter Password: ");
|
||||
|
||||
bytes_read = getline(my_string, &nbytes, stdin);
|
||||
bytes_read = getline(&my_string, &nbytes, stdin);
|
||||
|
||||
if(bytes_read == -1) {
|
||||
puts("Error");
|
||||
free(my_string);
|
||||
return -1;
|
||||
} else {
|
||||
if (strcmp(*my_string, password) == 0) {
|
||||
if (strcmp(my_string, password) == 0) {
|
||||
puts("Success");
|
||||
free(my_string);
|
||||
return 0;
|
||||
} else {
|
||||
puts("How about no?!");
|
||||
free(my_string);
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue