Bug 874425 - Ensure that durationMs >= 0. r=yoric, a=test-only
--- a/toolkit/components/osfile/modules/osfile_async_front.jsm
+++ b/toolkit/components/osfile/modules/osfile_async_front.jsm
@@ -161,19 +161,19 @@ let Scheduler = {
}
// Bug 874425 demonstrates that two successive calls to Date.now()
// can actually produce an interval with negative duration.
// We assume that this is due to an operation that is so short
// that Date.now() is not monotonic, so we round this up to 0.
let durationMs = Math.max(0, data.durationMs);
// Accumulate (or initialize) outExecutionDuration
if (typeof options.outExecutionDuration == "number") {
- options.outExecutionDuration += data.durationMs;
+ options.outExecutionDuration += durationMs;
} else {
- options.outExecutionDuration = data.durationMs;
+ options.outExecutionDuration = durationMs;
}
return data.ok;
},
function onError(error) {
// Decode any serialized error
if (error instanceof PromiseWorker.WorkerError) {
throw OS.File.Error.fromMsg(error.data);
} else {