Skip to content

Commit

Permalink
g.gisenv: Fix Resource Leak issue in main.c (#4966)
Browse files Browse the repository at this point in the history
* Fix Resource Leak issue

* Update
  • Loading branch information
ShubhamDesai authored Jan 31, 2025
1 parent 0ec1690 commit 4f3097d
Showing 1 changed file with 6 additions and 2 deletions.
8 changes: 6 additions & 2 deletions general/g.gisenv/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -198,6 +198,7 @@ char *parse_variable(const char *v_name, char **value)
{
char *u_name; /* uppercase variable name */
char *name, *ptr;
name = NULL;

name = G_store(v_name);
if (value)
Expand All @@ -207,12 +208,14 @@ char *parse_variable(const char *v_name, char **value)
if (ptr != NULL) {
*ptr = '\0';
if (value)
*value = ptr + 1;
*value = G_store(ptr + 1);
}
/* Allow unset without '=' sign */
if (value) {
if (*value != NULL && **value == '\0')
if (*value != NULL && **value == '\0') {
G_free(*value);
*value = NULL;
}
}
if (strlen(name) < 1)
G_fatal_error(_("GRASS variable not defined"));
Expand All @@ -224,6 +227,7 @@ char *parse_variable(const char *v_name, char **value)
G_verbose_message(_("GRASS variable must be uppercase. Using '%s'."),
u_name);
}
G_free(name);

return u_name;
}

0 comments on commit 4f3097d

Please sign in to comment.