The two call places now make use of b_contig_data(0) and check by themselves that the returned size is no larger than the scheduled output data.