From 833f1b13bfd4da310d2705244507aadcf4d18d63 Mon Sep 17 00:00:00 2001 From: nick black Date: Sun, 7 Feb 2021 17:36:44 -0500 Subject: [PATCH] rgba_blitter_default: just take tcache #1334 --- src/lib/blit.c | 2 +- src/lib/blitset.h | 13 ++++++------- src/lib/direct.cpp | 2 +- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/lib/blit.c b/src/lib/blit.c index d99494315..6b47b4101 100644 --- a/src/lib/blit.c +++ b/src/lib/blit.c @@ -913,5 +913,5 @@ int ncblit_rgba(const void* data, int linesize, const struct ncvisual_options* v } ncblitter_e ncvisual_media_defblitter(const notcurses* nc, ncscale_e scale){ - return rgba_blitter_default(nc->tcache.utf8, scale, nc->tcache.sextants); + return rgba_blitter_default(&nc->tcache, scale); } diff --git a/src/lib/blitset.h b/src/lib/blitset.h index fc64344b9..400971a56 100644 --- a/src/lib/blitset.h +++ b/src/lib/blitset.h @@ -40,24 +40,24 @@ encoding_x_scale(const struct blitset* bset) { // Expand NCBLIT_DEFAULT for media blitting, based on environment. static inline ncblitter_e -rgba_blitter_default(bool utf8, ncscale_e scale, bool sextants){ - if(!utf8){ +rgba_blitter_default(const tinfo* tcache, ncscale_e scale){ + if(!tcache->utf8){ return NCBLIT_1x1; } if(scale == NCSCALE_NONE || scale == NCSCALE_SCALE){ return NCBLIT_2x1; } - if(!sextants){ + if(!tcache->sextants){ return NCBLIT_2x2; } return NCBLIT_3x2; } static inline const struct blitset* -rgba_blitter_low(const tinfo* tcache, bool sextants, ncscale_e scale, bool maydegrade, +rgba_blitter_low(const tinfo* tcache, ncscale_e scale, bool maydegrade, ncblitter_e blitrec) { if(blitrec == NCBLIT_DEFAULT){ - blitrec = rgba_blitter_default(tcache->utf8, scale, sextants); + blitrec = rgba_blitter_default(tcache, scale); } const struct blitset* bset = lookup_blitset(tcache, blitrec, maydegrade); if(bset && !bset->blit){ // FIXME remove this once all blitters are enabled @@ -72,8 +72,7 @@ static inline const struct blitset* rgba_blitter(const struct notcurses* nc, const struct ncvisual_options* opts) { const bool maydegrade = !(opts && (opts->flags & NCVISUAL_OPTION_NODEGRADE)); const ncscale_e scale = opts ? opts->scaling : NCSCALE_NONE; - return rgba_blitter_low(&nc->tcache, notcurses_cansextant(nc), - scale, maydegrade, opts ? opts->blitter : NCBLIT_DEFAULT); + return rgba_blitter_low(&nc->tcache, scale, maydegrade, opts ? opts->blitter : NCBLIT_DEFAULT); } #endif diff --git a/src/lib/direct.cpp b/src/lib/direct.cpp index 3c89608d2..67e00fa18 100644 --- a/src/lib/direct.cpp +++ b/src/lib/direct.cpp @@ -485,7 +485,7 @@ ncdirectv* ncdirect_render_frame(ncdirect* n, const char* file, return nullptr; } //fprintf(stderr, "render %d/%d to %d+%d scaling: %d\n", ncv->rows, ncv->cols, leny, lenx, scale); - auto bset = rgba_blitter_low(&n->tcache, n->tcache.sextants, scale, true, blitter); + auto bset = rgba_blitter_low(&n->tcache, scale, true, blitter); if(!bset){ ncvisual_destroy(ncv); return nullptr;