Not sure if it happened when I switched it to getPixelBuffer, but sampleColor in PageColorSampler is getting more data than it needs since each snapshot is now returning 16 bytes (a 2x2 of pixels) rather than the 4 bytes it wants.
It's been there all along it seems. And the real issue is that snapshot ImageBuffer is being created at deviceScaleFactor. Probably need to add another option to snapshot at 1x.
<rdar://problem/78592414>