Fix: flt.utils.muxer: don't clear an empty `GPtrArray`
[babeltrace.git] / src / plugins / utils / muxer / muxer.c
index e68c372c0addaa43615c152abbe894a785af702b..9510d07a5e45a865d33f7855fbdc02534f384268 100644 (file)
@@ -1531,8 +1531,14 @@ bt_component_class_message_iterator_seek_beginning_method_status muxer_msg_iter_
                muxer_msg_iter->ended_muxer_upstream_msg_iters->pdata[i] = NULL;
        }
 
-       g_ptr_array_remove_range(muxer_msg_iter->ended_muxer_upstream_msg_iters,
-               0, muxer_msg_iter->ended_muxer_upstream_msg_iters->len);
+       /*
+        * GLib < 2.48.0 asserts when g_ptr_array_remove_range() is
+        * called on an empty array.
+        */
+       if (muxer_msg_iter->ended_muxer_upstream_msg_iters->len > 0) {
+               g_ptr_array_remove_range(muxer_msg_iter->ended_muxer_upstream_msg_iters,
+                       0, muxer_msg_iter->ended_muxer_upstream_msg_iters->len);
+       }
        muxer_msg_iter->last_returned_ts_ns = INT64_MIN;
        muxer_msg_iter->clock_class_expectation =
                MUXER_MSG_ITER_CLOCK_CLASS_EXPECTATION_ANY;
This page took 0.023188 seconds and 4 git commands to generate.