- if (connection->iterators) {
- for (i = 0; i < connection->iterators->len; i++) {
- struct bt_notification_iterator *iterator =
- g_ptr_array_index(connection->iterators, i);
-
- BT_LOGD("Finalizing notification iterator created by this connection: "
- "iter-addr=%p", iterator);
- bt_notification_iterator_finalize(iterator);
-
- /*
- * Make sure this iterator does not try to
- * remove itself from this connection's
- * iterators on destruction because this
- * connection won't exist anymore.
- */
- bt_notification_iterator_set_connection(iterator,
- NULL);
- }
-
- g_ptr_array_free(connection->iterators, TRUE);
- }
+ bt_connection_end(connection, false);
+ g_ptr_array_free(connection->iterators, TRUE);