diff options
| author | Danilo M. <danix@danix.xyz> | 2026-09-15 18:11:12 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-09-15 18:11:12 +0200 |
| commit | d5812ffa717cad99e12752b719a024f06b72b6af (patch) | |
| tree | 3bd332da4708d3b5eb97f6e6c43a63d917ba1495 /internal/notify/service_test.go | |
| parent | 2a3916ce192d73bdd6f621cc3842782814351227 (diff) | |
| download | notifyd-d5812ffa717cad99e12752b719a024f06b72b6af.tar.gz notifyd-d5812ffa717cad99e12752b719a024f06b72b6af.zip | |
fix(notify): bound RowStride before the int64 guard
The dimension cap closed the named overflow, but stride was still
r.RowStride whenever RowStride >= Width*Channels, and asInt accepts an
int64 wire value. With Width=2, Height=2, RowStride=MaxInt the int64
need product wraps negative, the guard passes, and r.Data[y*stride:]
panics at y=1. Reject a negative stride and any stride above
Width*Channels+4096, which is the real packing plus alignment slack.
After the cap and this bound neither need nor y*stride can overflow, so
the comment now says so.
Diffstat (limited to 'internal/notify/service_test.go')
0 files changed, 0 insertions, 0 deletions
