+ struct bt_object *parent = obj->parent;
+
+#ifdef BT_LOGV
+ BT_LOGV("Releasing parented object: addr=%p, ref-count=%lu, "
+ "parent-addr=%p, parent-ref-count=%lu",
+ obj, obj->ref_count.count,
+ parent, parent->ref_count.count);
+#endif
+
+ if (obj->parent_is_owner_listener) {
+ /*
+ * Object has a chance to destroy itself here
+ * under certain conditions and notify its
+ * parent. At this point the parent is
+ * guaranteed to exist because it's not put yet.
+ */
+ obj->parent_is_owner_listener(obj);
+ }
+