diff options
-rw-r--r-- | common/quic.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/common/quic.c b/common/quic.c index 27f637b..3e7c802 100644 --- a/common/quic.c +++ b/common/quic.c @@ -1194,7 +1194,7 @@ static void quic_image_params(Encoder *encoder, QuicImageType type, int *channel #define FILL_LINES() { \ if (line == lines_end) { \ int n = encoder->usr->more_lines(encoder->usr, &line); \ - if (n <= 0) { \ + if (n <= 0 || line == NULL) { \ encoder->usr->error(encoder->usr, "more lines failed\n"); \ } \ lines_end = line + n * stride; \ @@ -1238,11 +1238,11 @@ int quic_encode(QuicContext *quic, QuicImageType type, int width, int height, int i; #endif - if (line == NULL) { + lines_end = line + num_lines * stride; + if (line == NULL && lines_end != line) { spice_warn_if_reached(); return QUIC_ERROR; } - lines_end = line + num_lines * stride; quic_image_params(encoder, type, &channels, &bpc); |