| --- a/src/knocker_conf.c |
| +++ b/src/knocker_conf.c |
| @@ -223,6 +223,8 @@ |
| { |
| char *tmpp = malloc (strlen (line)); |
| char *p = malloc (strlen (line)); |
| + char *tmpp_orig = tmpp; |
| + char *p_orig = p; |
| |
| /* Check if the option is present in the line */ |
| tmpp = strstr (line, opt); |
| @@ -234,7 +236,7 @@ |
| |
| if (!_isblank (*tmpp) || *tmpp != KNOCKER_OPTION_TOKEN) |
| { |
| - free (tmpp); |
| + free (tmpp_orig); |
| return 0; |
| } |
| |
| @@ -247,8 +249,7 @@ |
| |
| strcpy (value, p); |
| |
| - /* free(p); this cause knocker to segfault */ |
| - /* well I have to know why... */ |
| + free(p_orig); |
| |
| return 1; |
| } |