fix: close Θ-W7-T1 review — scaling guard, opacity claims, two vacuous test fixes

Guards the stroke blend against LICE_EXT_GET_SCALING, tightens the analytic-stroker's boxes and NaN handling, corrects the opaque-core threshold and inner-dial rationale in the docs, and re-derives two review-flagged tautological tests so they actually fail against the bugs they claim to catch.
This commit is contained in:
2026-08-01 13:45:43 -04:00
parent 2e09776342
commit 3fb77027c6
11 changed files with 181 additions and 30 deletions
+9
View File
@@ -45,6 +45,15 @@ inline void strokeLineAA(LICE_IBitmap* bmp, float x0, float y0, float x1, float
void strokeArcAA(LICE_IBitmap* bmp, float cx, float cy, float radius, float startRad, float endRad,
float widthPx, LICE_pixel color, float alpha = 1.0f);
// The draw-thread-only point-list scratch, shared by every paint site that builds a polyline
// column-by-column before one strokePolylineAA call (the curve thumbnail, the curve-popup
// trace, the two waveform-overlay traces). Reuse only: `clear()` and refill before each use,
// never read across paint calls. This module already owns the draw-thread scratch (the mask +
// the arc point list this header's own functions use internally); routing every external
// point-list consumer through the same accessor keeps that ownership one fact in one place
// instead of four independent function-local statics.
std::vector<ui::StrokePoint>& scratchPoints();
} // namespace reasampler::vst
#endif // _WIN32