diff --git a/gstlal-ugly/gst/lal/gstlal_interpolator.c b/gstlal-ugly/gst/lal/gstlal_interpolator.c
index 78cb02d658b6f3e687a1534d27bca3b6d6da9cb7..2e517a7f7c7a4cc4059c6fc3509cb057dc0a01dd 100644
--- a/gstlal-ugly/gst/lal/gstlal_interpolator.c
+++ b/gstlal-ugly/gst/lal/gstlal_interpolator.c
@@ -698,7 +698,7 @@ static guint get_output_length(GSTLALInterpolator *element, guint samps) {
 			pretend_samps = element->half_length * element->inrate / element->outrate;
 	}
 	guint numinsamps = get_available_samples(element) + samps + pretend_samps;
-	if (numinsamps < kernel_length(element) - 1)
+	if (numinsamps < element->blocksampsin)
 		return 0;
 	// Note this could be zero
 	guint numoutsamps = (numinsamps - kernel_length(element) - 1) * element->outrate / element->inrate;