diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/ProcTime.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/ProcTime.java index 2492d86ee9d3acec7bd559b9879621153f621409..2ad13f71a9876abacf1ec07035de56a37c857925 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/ProcTime.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/ProcTime.java @@ -58,10 +58,11 @@ public abstract class ProcTime extends RBuiltinNode.Arg0 { long sysTimeInNanos = userSysTimeInNanos[1]; data[0] = userTimeInNanos < 0 ? RRuntime.DOUBLE_NA : asDoubleSecs(userTimeInNanos); data[1] = sysTimeInNanos < 0 ? RRuntime.DOUBLE_NA : asDoubleSecs(sysTimeInNanos); + boolean complete = userTimeInNanos >= 0 && sysTimeInNanos >= 0; data[2] = asDoubleSecs(nowInNanos); long[] childTimes = timings.childTimesInNanos(); boolean na = childTimes[0] < 0 || childTimes[1] < 0; - boolean complete = na ? RDataFactory.INCOMPLETE_VECTOR : RDataFactory.COMPLETE_VECTOR; + complete &= !na; data[3] = na ? RRuntime.DOUBLE_NA : asDoubleSecs(childTimes[0]); data[4] = na ? RRuntime.DOUBLE_NA : asDoubleSecs(childTimes[1]); if (RNAMES == null) {