]> git.openfabrics.org - ~ardavis/dapl.git/commitdiff
dat: dat_ia_open should close provider after failure
authorArlin Davis <arlin.r.davis@intel.com>
Tue, 4 Mar 2014 18:52:49 +0000 (10:52 -0800)
committerArlin Davis <arlin.r.davis@intel.com>
Tue, 4 Mar 2014 18:52:49 +0000 (10:52 -0800)
Signed-off-by: Arlin Davis <arlin.r.davis@intel.com>
dat/udat/udat.c

index 03edcf9c3cd0fa234a3b5a8927b2551cedc18e76..842b36c03df7085bf22864cbe93a065cc4827112 100755 (executable)
@@ -210,6 +210,12 @@ dat_ia_openv(IN const DAT_NAME_PTR name,
                                      async_event_handle, ia_handle);
        if (dat_status == DAT_SUCCESS) {
                *ia_handle = (DAT_IA_HANDLE) dats_set_ia_handle(*ia_handle);
+       } else {
+               (void)dat_dr_provider_close(&info);
+#ifndef DAT_NO_STATIC_REGISTRY
+               (void)dat_sr_provider_close(&info);
+#endif
+               return dat_status;
        }
 
        /*