Closing file on failure

Signed-off-by: Yevgeny Kliteynik <[email protected]>
---
 opensm/opensm/osm_subnet.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/opensm/opensm/osm_subnet.c b/opensm/opensm/osm_subnet.c
index d5c5ab2..149ab85 100644
--- a/opensm/opensm/osm_subnet.c
+++ b/opensm/opensm/osm_subnet.c
@@ -1163,8 +1163,10 @@ int osm_subn_parse_conf_file(char *file_name, 
osm_subn_opt_t * p_opts)
        cl_log_event("OpenSM", CL_LOG_INFO, line, NULL, 0);

        p_opts->config_file = file_name;
-       if (!p_opts->file_opts && !(p_opts->file_opts = 
malloc(sizeof(*p_opts))))
+       if (!p_opts->file_opts && !(p_opts->file_opts = 
malloc(sizeof(*p_opts)))) {
+               fclose(opts_file);
                return -1;
+       }
        memcpy(p_opts->file_opts, p_opts, sizeof(*p_opts));

        while (fgets(line, 1023, opts_file) != NULL) {
-- 
1.6.2.4

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to