Always evaluate BT_ASSERT(); add BT_ASSERT_DBG() for debug mode only
[babeltrace.git] / src / bindings / python / bt2 / bt2 / native_bt_component_class.i.h
index 23e7d06a0dbcc5f1c831fa7b1bff588f490c2ef7..f830afa3465cf5449309ba3e1b1d18de07b460be 100644 (file)
@@ -505,16 +505,15 @@ void component_class_finalize(bt_self_component *self_component)
                bt_logging_level log_level = get_self_component_log_level(
                        self_component);
 
-               BT_COMP_LOG_CUR_LVL(BT_LOG_WARNING, log_level, self_component,
-                       "User component's _user_finalize() method raised an exception: ignoring:");
-               logw_exception(log_level);
-
                /*
                 * Ignore any exception raised by the _user_finalize() method
                 * because it won't change anything at this point: the component
                 * is being destroyed anyway.
                 */
-               PyErr_Clear();
+               BT_COMP_LOG_CUR_LVL(BT_LOG_WARNING, log_level, self_component,
+                       "User component's _user_finalize() method raised an exception: ignoring:");
+               logw_exception_clear(log_level);
+
                goto end;
        }
 
@@ -1181,17 +1180,15 @@ void component_class_message_iterator_finalize(
                bt_logging_level log_level = get_self_component_log_level(
                        self_comp);
 
-               BT_COMP_LOG_CUR_LVL(BT_LOG_WARNING, log_level, self_comp,
-                       "User's _user_finalize() method raised an exception: ignoring:");
-               logw_exception(get_self_message_iterator_log_level(
-                       message_iterator));
-
                /*
                 * Ignore any exception raised by the _user_finalize() method
                 * because it won't change anything at this point: the component
                 * is being destroyed anyway.
                 */
-               PyErr_Clear();
+               BT_COMP_LOG_CUR_LVL(BT_LOG_WARNING, log_level, self_comp,
+                       "User's _user_finalize() method raised an exception: ignoring:");
+               logw_exception_clear(get_self_message_iterator_log_level(
+                       message_iterator));
        }
 
        Py_XDECREF(py_method_result);
@@ -1211,8 +1208,7 @@ component_class_message_iterator_next(
        PyObject *py_message_iter = bt_self_message_iterator_get_data(message_iterator);
        PyObject *py_method_result = NULL;
 
-       BT_ASSERT(py_message_iter);
-
+       BT_ASSERT_DBG(py_message_iter);
        py_method_result = PyObject_CallMethod(py_message_iter,
                "_bt_next_from_native", NULL);
        if (!py_method_result) {
@@ -1229,7 +1225,7 @@ component_class_message_iterator_next(
        *count = 1;
 
        /* Overflow errors should never happen. */
-       BT_ASSERT(!PyErr_Occurred());
+       BT_ASSERT_DBG(!PyErr_Occurred());
 
        status = BT_COMPONENT_CLASS_MESSAGE_ITERATOR_NEXT_METHOD_STATUS_OK;
 
@@ -1247,7 +1243,7 @@ component_class_sink_consume(bt_self_component_sink *self_component_sink)
        PyObject *py_method_result = NULL;
        bt_component_class_sink_consume_method_status status;
 
-       BT_ASSERT(py_comp);
+       BT_ASSERT_DBG(py_comp);
 
        py_method_result = PyObject_CallMethod(py_comp,
                "_user_consume", NULL);
This page took 0.026746 seconds and 4 git commands to generate.