[systemd-devel] [PATCH] shared: fix resource leak in config_parse_default_instance

2014-09-16 Thread Andreas Henriksson
The recently allocated printed is not freed on error path.

Found by coverity. Fixes: CID#1237745
---
 src/shared/install.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/shared/install.c b/src/shared/install.c
index 5d3fcf5..61e572b 100644
--- a/src/shared/install.c
+++ b/src/shared/install.c
@@ -1025,8 +1025,10 @@ static int config_parse_default_instance(
 if (r  0)
 return r;
 
-if (!unit_instance_is_valid(printed))
+if (!unit_instance_is_valid(printed)) {
+free(printed);
 return -EINVAL;
+}
 
 free(i-default_instance);
 i-default_instance = printed;
-- 
2.1.0

___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel


Re: [systemd-devel] [PATCH] shared: fix resource leak in config_parse_default_instance

2014-09-16 Thread Daniel Mack
On 09/16/2014 09:36 PM, Andreas Henriksson wrote:
 The recently allocated printed is not freed on error path.
 
 Found by coverity. Fixes: CID#1237745
 ---
  src/shared/install.c | 4 +++-
  1 file changed, 3 insertions(+), 1 deletion(-)
 
 diff --git a/src/shared/install.c b/src/shared/install.c
 index 5d3fcf5..61e572b 100644
 --- a/src/shared/install.c
 +++ b/src/shared/install.c
 @@ -1025,8 +1025,10 @@ static int config_parse_default_instance(
  if (r  0)
  return r;
  
 -if (!unit_instance_is_valid(printed))
 +if (!unit_instance_is_valid(printed)) {
 +free(printed);
  return -EINVAL;
 +}
  
  free(i-default_instance);
  i-default_instance = printed;
 

Applied, thanks!
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel