diff --git a/src/frontend/com_measure2.c b/src/frontend/com_measure2.c index 15b2e5fb8..83d5f9631 100644 --- a/src/frontend/com_measure2.c +++ b/src/frontend/com_measure2.c @@ -436,6 +436,11 @@ com_measure_when( scaleValue = dScale->v_realdata[i]; } + /* check for NAN */ + if (isnan(value)) + continue; + /* end of check */ + if (has_d2) { if (ac_check) { if (d2->v_compdata) @@ -450,6 +455,11 @@ com_measure_when( } else { value2 = d2->v_realdata[i]; } + + /* check for NAN */ + if (isnan(value2)) + continue; + /* end of check */ } else { value2 = NAN; } @@ -668,6 +678,11 @@ measure_at( svalue = dScale->v_realdata[i]; } + /* check for NAN */ + if (isnan(value)) + continue; + /* end of check */ + if ((i > 0) && (psvalue <= at) && (svalue >= at)) { meas->m_measured = pvalue + (at - psvalue) * (value - pvalue) / (svalue - psvalue); return; @@ -764,6 +779,11 @@ measure_minMaxAvg( svalue = dScale->v_realdata[i]; } + /* check for NAN */ + if (isnan(value)) + continue; + /* end of check */ + if (dc_check) { /* dc: start from pos or neg scale value */ if ((svalue < meas->m_from) || (svalue > meas->m_to)) @@ -934,6 +954,11 @@ measure_rms_integral( xvalue = xScale->v_realdata[i]; } + /* check for NAN */ + if (isnan(value)) + continue; + /* end of check */ + if (xvalue < meas->m_from) continue;