Fix: lib: pass down API function name to some helpers
[babeltrace.git] / src / lib / current-thread.c
index 959e1695140d8941b9a47e1fb28c7376680062a8..9e14e4e70e895920a852707ca98d5464e12cfece 100644 (file)
@@ -1,37 +1,27 @@
 /*
- * Copyright (c) 2019 Philippe Proulx <pproulx@efficios.com>
- *
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to deal
- * in the Software without restriction, including without limitation the rights
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
+ * SPDX-License-Identifier: MIT
  *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
+ * Copyright (c) 2019 Philippe Proulx <pproulx@efficios.com>
  */
 
 #define BT_LOG_TAG "LIB/CUR-THREAD"
 #include "lib/logging.h"
 
-#include <babeltrace2/current-thread.h>
+#include <babeltrace2/babeltrace.h>
 #include <stdint.h>
 #include <stdarg.h>
 
 #include "error.h"
 #include "common/assert.h"
-#include "lib/assert-pre.h"
+#include "lib/assert-cond.h"
 #include "lib/func-status.h"
 
+#define BT_ASSERT_PRE_FILE_NAME_NON_NULL(_file_name)                   \
+       BT_ASSERT_PRE_NON_NULL("file-name", (_file_name), "File name");
+
+#define BT_ASSERT_PRE_MSG_FMT_NON_NULL(_msg_fmt)                       \
+       BT_ASSERT_PRE_NON_NULL("message-format", (_msg_fmt), "Message format");
+
 /*
  * This points to the thread's error object, or it's `NULL` if there's
  * no current error object.
@@ -58,6 +48,7 @@ void bt_current_thread_clear_error(void)
 
 void bt_current_thread_move_error(const struct bt_error *error)
 {
+       BT_ASSERT_PRE_ERROR_NON_NULL(error);
        bt_current_thread_clear_error();
        thread_error = (void *) error;
        BT_LOGD("Moved error object as current thread's error: addr=%p",
@@ -100,6 +91,10 @@ bt_current_thread_error_append_cause_from_unknown(
                try_create_thread_error();
        va_list args;
 
+       BT_ASSERT_PRE_NON_NULL("module-name", module_name, "Module name");
+       BT_ASSERT_PRE_FILE_NAME_NON_NULL(file_name);
+       BT_ASSERT_PRE_MSG_FMT_NON_NULL(msg_fmt);
+
        if (status) {
                goto end;
        }
@@ -124,6 +119,10 @@ bt_current_thread_error_append_cause_from_component(
                try_create_thread_error();
        va_list args;
 
+       BT_ASSERT_PRE_COMP_NON_NULL(self_comp);
+       BT_ASSERT_PRE_FILE_NAME_NON_NULL(file_name);
+       BT_ASSERT_PRE_MSG_FMT_NON_NULL(msg_fmt);
+
        if (status) {
                goto end;
        }
@@ -148,6 +147,10 @@ bt_current_thread_error_append_cause_from_component_class(
                try_create_thread_error();
        va_list args;
 
+       BT_ASSERT_PRE_COMP_CLS_NON_NULL(self_comp_class);
+       BT_ASSERT_PRE_FILE_NAME_NON_NULL(file_name);
+       BT_ASSERT_PRE_MSG_FMT_NON_NULL(msg_fmt);
+
        if (status) {
                goto end;
        }
@@ -172,6 +175,10 @@ bt_current_thread_error_append_cause_from_message_iterator(
                try_create_thread_error();
        va_list args;
 
+       BT_ASSERT_PRE_MSG_ITER_NON_NULL(self_iter);
+       BT_ASSERT_PRE_FILE_NAME_NON_NULL(file_name);
+       BT_ASSERT_PRE_MSG_FMT_NON_NULL(msg_fmt);
+
        if (status) {
                goto end;
        }
This page took 0.025426 seconds and 4 git commands to generate.