From d08b65f323730b77c45e2147bbe6f955c93a17ae Mon Sep 17 00:00:00 2001 From: nick black Date: Wed, 23 Jun 2021 23:59:33 -0400 Subject: [PATCH] ncdirect_stream(): if bitmap wraps the screen, move up one more y #1820 --- src/lib/direct.c | 6 +++++- src/lib/visual.c | 3 ++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/lib/direct.c b/src/lib/direct.c index a92041346..b966bea3a 100644 --- a/src/lib/direct.c +++ b/src/lib/direct.c @@ -1302,7 +1302,11 @@ int ncdirect_stream(ncdirect* n, const char* filename, ncstreamcb streamer, int thisid = -1; do{ if(y > 0){ - ncdirect_cursor_up(n, y); + if(x == ncdirect_dim_x(n)){ + x = 0; + ++y; + } + ncdirect_cursor_up(n, y - 1); } if(x > 0){ ncdirect_cursor_left(n, x); diff --git a/src/lib/visual.c b/src/lib/visual.c index e032e1c4e..82f366135 100644 --- a/src/lib/visual.c +++ b/src/lib/visual.c @@ -80,9 +80,10 @@ int ncvisual_blit(ncvisual* ncv, int rows, int cols, ncplane* n, return 0; } } + // generic implementation int stride = 4 * cols; uint32_t* data = resize_bitmap(ncv->data, ncv->pixy, ncv->pixx, - ncv->rowstride, rows, cols, stride); + ncv->rowstride, rows, cols, stride); if(data == NULL){ return -1; }