X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=lib%2Fiterator.c;h=4ee0d5d22d454394075e3e3e68c2051d1c9202ba;hb=15e220d0fe11ab0b103645443574366de97862b7;hp=74942ac8948e19d9abbcc4910cd6685d9a9a9e48;hpb=788b424d206d7ce49d60803c3f5ee75a3fc60097;p=babeltrace.git diff --git a/lib/iterator.c b/lib/iterator.c index 74942ac8..4ee0d5d2 100644 --- a/lib/iterator.c +++ b/lib/iterator.c @@ -399,10 +399,15 @@ int bt_iter_set_pos(struct bt_iter *iter, const struct bt_iter_pos *iter_pos) stream_pos->offset = saved_pos->offset; stream_pos->last_offset = LAST_OFFSET_POISON; - stream->prev_real_timestamp = 0; - stream->prev_real_timestamp_end = 0; - stream->prev_cycles_timestamp = 0; - stream->prev_cycles_timestamp_end = 0; + stream->current.real.begin = 0; + stream->current.real.end = 0; + stream->current.cycles.begin = 0; + stream->current.cycles.end = 0; + + stream->prev.real.begin = 0; + stream->prev.real.end = 0; + stream->prev.cycles.begin = 0; + stream->prev.cycles.end = 0; printf_debug("restored to cur_index = %" PRId64 " and " "offset = %" PRId64 ", timestamp = %" PRIu64 "\n", @@ -610,14 +615,11 @@ error: return NULL; } -struct bt_iter_pos *bt_iter_create_time_pos(struct bt_iter *iter, +struct bt_iter_pos *bt_iter_create_time_pos(struct bt_iter *unused, uint64_t timestamp) { struct bt_iter_pos *pos; - if (!iter) - return NULL; - pos = g_new0(struct bt_iter_pos, 1); pos->type = BT_SEEK_TIME; pos->u.seek_time = timestamp; @@ -715,7 +717,7 @@ int bt_iter_init(struct bt_iter *iter, int i; int ret = 0; - if (!iter || !ctx) + if (!iter || !ctx || !ctx->tc || !ctx->tc->array) return -EINVAL; if (ctx->current_iterator) {