- for (unsigned y = 0; y < dst_samples; ++y) {
- unsigned num_samples_saved = combine_samples<DestFloat>(weights + y * src_samples, NULL, num_subtexels, inv_num_subtexels, src_samples, UINT_MAX);
- src_bilinear_samples = max<int>(src_bilinear_samples, src_samples - num_samples_saved);
+ unsigned max_samples_saved = UINT_MAX;
+ for (unsigned y = 0; y < dst_samples && max_samples_saved > 0; ++y) {
+ unsigned num_samples_saved = combine_samples<DestFloat>(weights + y * src_samples, NULL, num_subtexels, inv_num_subtexels, src_samples, max_samples_saved);
+ max_samples_saved = min(max_samples_saved, num_samples_saved);