}
}
+ // Recreate borders
+ nlmeans_border(mem_pre, w, h, border);
+
// Assign result
+ src->mem_pre = mem_pre;
+ src->image_pre = image_pre;
if (filter_type & NLMEANS_PREFILTER_MODE_PASSTHRU)
{
- // No swap needed as nlmeans_alloc() set src->mem_pre == src->mem
- src->mem = mem_pre;
- src->image = image_pre;
- }
- else
- {
- src->mem_pre = mem_pre;
- src->image_pre = image_pre;
+ src->mem = src->mem_pre;
+ src->image = src->image_pre;
}
- // Recreate borders
- nlmeans_border(mem_pre, w, h, border);
-
}
src->prefiltered = 1;
hb_unlock(src->mutex);