projects
/
babeltrace.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Handle empty streams on iterator init
[babeltrace.git]
/
lib
/
iterator.c
diff --git
a/lib/iterator.c
b/lib/iterator.c
index 155fcbe6f7382a332ba3967e0cde86b21f5b40f7..3280f4a816c3a88468dfb99dd320111c24ded54d 100644
(file)
--- a/
lib/iterator.c
+++ b/
lib/iterator.c
@@
-725,7
+725,7
@@
int bt_iter_init(struct bt_iter *iter,
if (ret == EOF) {
ret = 0;
continue;
if (ret == EOF) {
ret = 0;
continue;
- } else if (ret) {
+ } else if (ret
!= 0 && ret != EAGAIN
) {
goto error;
}
/* Add to heap */
goto error;
}
/* Add to heap */
@@
-821,6
+821,13
@@
reinsert:
removed = bt_heap_replace_max(iter->stream_heap, file_stream);
assert(removed == file_stream);
removed = bt_heap_replace_max(iter->stream_heap, file_stream);
assert(removed == file_stream);
+ file_stream = bt_heap_maximum(iter->stream_heap);
+ if (file_stream->pos.content_size == 0) {
+ ret = EAGAIN;
+ } else {
+ ret = 0;
+ }
+
end:
return ret;
}
end:
return ret;
}
This page took
0.026256 seconds
and
4
git commands to generate.