summaryrefslogtreecommitdiff
path: root/buffered_file.c
diff options
context:
space:
mode:
Diffstat (limited to 'buffered_file.c')
-rw-r--r--buffered_file.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/buffered_file.c b/buffered_file.c
index 486af575d5..94ecbbcea1 100644
--- a/buffered_file.c
+++ b/buffered_file.c
@@ -189,13 +189,19 @@ static int buffered_close(void *opaque)
return ret;
}
+/*
+ * The meaning of the return values is:
+ * 0: We can continue sending
+ * 1: Time to stop
+ * -1: There has been an error
+ */
static int buffered_rate_limit(void *opaque)
{
QEMUFileBuffered *s = opaque;
- if (s->has_error)
- return 0;
-
+ if (s->has_error) {
+ return -1;
+ }
if (s->freeze_output)
return 1;