Blob Blame Raw
From 7e71ffbea05e79230e7c0e3a0a14d305c6779cc0 Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Fri, 11 Mar 2016 15:15:09 +0100
Subject: [PATCH] workflows: NULL for the default configuration dir

Other projects should not bother with passing the path to the default
configuration directory.

Signed-off-by: Jakub Filak <jfilak@redhat.com>
---
 src/include/workflow.h | 10 +++++++++-
 src/lib/workflow.c     |  6 ++++++
 2 files changed, 15 insertions(+), 1 deletion(-)

diff --git a/src/include/workflow.h b/src/include/workflow.h
index c707007..63ca97e 100644
--- a/src/include/workflow.h
+++ b/src/include/workflow.h
@@ -58,13 +58,21 @@ void wf_set_priority(workflow_t *w, int priority);
  */
 int wf_priority_compare(const workflow_t *first, const workflow_t *second);
 
+/* The function loads workflow XML configuration files for the workflows listed
+ * in the wf_names argument. The XML files are searched in a directory at path.
+ *
+ * @param wf_names Required workflow names
+ * @param path y File system path to directory with workflow XML
+ * configuration files. If NULL, the default 'WORKFLOWS_DIR' is used instead.
+ * @returns A map where the key is workflow's name and the value is workflow_t *.
+ */
 GHashTable *load_workflow_config_data_from_list(GList *wf_names, const char *path);
 
 /* The function loads all workflow XML configuration files placed in the given
  * directory.
  *
  * @param directory File system path to directory with workflow XML
- * configuration files.
+ * configuration files. If NULL, the default 'WORKFLOWS_DIR' is used instead.
  * @returns A map where the key is workflow's name and the value is workflow_t *.
  */
 #define load_workflow_config_data libreport_load_workflow_config_data
diff --git a/src/lib/workflow.c b/src/lib/workflow.c
index a985834..c74dad1 100644
--- a/src/lib/workflow.c
+++ b/src/lib/workflow.c
@@ -105,6 +105,9 @@ GHashTable *load_workflow_config_data_from_list(GList *wf_names,
                          (GDestroyNotify) free_workflow
         );
 
+    if (path == NULL)
+        path = WORKFLOWS_DIR;
+
     GList *workflow_files = get_file_list(path, "xml");
     while(wfs)
     {
@@ -131,6 +134,9 @@ GHashTable *load_workflow_config_data(const char *path)
         );
     }
 
+    if (path == NULL)
+        path = WORKFLOWS_DIR;
+
     GList *workflow_files = get_file_list(path, "xml");
     while (workflow_files)
     {
-- 
2.5.5