lib: Add better guard against huge malloc

See dda6857fee
and https://bugzilla.redhat.com/show_bug.cgi?id=1656518

When the number of lines to assemble is 1, the median_filter() function
would be passed -1 as its size as it was calculated with:
(num_lines / 2) - 1
so (1 / 2) - 1 = 0 - 1 = -1

Add a guard to stop drivers trying to assemble single lines. This
doesn't however fix the vfs5011 driver that tried to do that.
This commit is contained in:
Bastien Nocera 2018-12-06 10:58:35 +01:00
parent 95b1e75f1b
commit 3cbc908a6e

View file

@ -419,7 +419,7 @@ struct fp_img *fpi_assemble_lines(struct fpi_line_asmbl_ctx *ctx,
struct fp_img *img; struct fp_img *img;
g_return_val_if_fail (lines != NULL, NULL); g_return_val_if_fail (lines != NULL, NULL);
g_return_val_if_fail (num_lines > 0, NULL); g_return_val_if_fail (num_lines >= 2, NULL);
fp_dbg("%"G_GINT64_FORMAT, g_get_real_time()); fp_dbg("%"G_GINT64_FORMAT, g_get_real_time());