Fix: fd leak on trace close
[babeltrace.git] / formats / ctf / ctf.c
index e59e3573b8709b6440e37f8560ca3dfe1e737298..d60b4353fc2c0d9bbdaaac45fbfb7e1475dd3b1d 100644 (file)
@@ -1911,6 +1911,7 @@ void ctf_close_trace(struct trace_descriptor *tdp)
                }
        }
        ctf_destroy_metadata(td);
+       close(td->dirfd);
        closedir(td->dir);
        g_free(td);
 }
@@ -1935,6 +1936,7 @@ void ctf_set_handle(struct trace_descriptor *descriptor,
        td->handle = handle;
 }
 
+static
 void __attribute__((constructor)) ctf_init(void)
 {
        int ret;
@@ -1944,4 +1946,8 @@ void __attribute__((constructor)) ctf_init(void)
        assert(!ret);
 }
 
-/* TODO: finalize */
+static
+void __attribute__((destructor)) ctf_exit(void)
+{
+       bt_unregister_format(&ctf_format);
+}
This page took 0.023209 seconds and 4 git commands to generate.