error:
bt_heap_free(iter->stream_heap);
error_heap_init:
+ bt_context_put(ctx);
+ iter->ctx = NULL;
g_free(iter->stream_heap);
iter->stream_heap = NULL;
error_ctx:
}
iter->ctx->current_iterator = NULL;
bt_context_put(iter->ctx);
+ iter->ctx = NULL;
}
void bt_iter_destroy(struct bt_iter *iter)
*/
ret = 0;
goto reinsert;
+ } else if (ret == -ERANGE) {
+ removed = bt_heap_remove(iter->stream_heap);
+ assert(removed == file_stream);
+ goto end;
} else if (ret) {
goto end;
}