Browse Source

Retry w/ JSON to avoid cross-object contamination

Artur Adib 13 years ago
parent
commit
bdc8a91778
  1. 15
      test/driver.js

15
test/driver.js

@ -248,8 +248,11 @@ function done() {
} }
} }
function sendTaskResult(snapshot, task, failure) { function sendTaskResult(snapshot, task, failure, result) {
var result = { browser: browser, // Optional result argument is for retrying XHR requests - see below
if (!result) {
result = JSON.stringify({
browser: browser,
id: task.id, id: task.id,
numPages: task.pdfDoc ? numPages: task.pdfDoc ?
(task.pageLimit || task.pdfDoc.numPages) : 0, (task.pageLimit || task.pdfDoc.numPages) : 0,
@ -257,7 +260,9 @@ function sendTaskResult(snapshot, task, failure) {
file: task.file, file: task.file,
round: task.round, round: task.round,
page: task.pageNum, page: task.pageNum,
snapshot: snapshot }; snapshot: snapshot
});
}
var r = new XMLHttpRequest(); var r = new XMLHttpRequest();
// (The POST URI is ignored atm.) // (The POST URI is ignored atm.)
@ -268,11 +273,11 @@ function sendTaskResult(snapshot, task, failure) {
inFlightRequests--; inFlightRequests--;
// Retry until successful // Retry until successful
if (r.status !== 200) if (r.status !== 200)
sendTaskResult(snapshot, task, failure); sendTaskResult(null, null, null, result);
} }
}; };
document.getElementById('inFlightCount').innerHTML = inFlightRequests++; document.getElementById('inFlightCount').innerHTML = inFlightRequests++;
r.send(JSON.stringify(result)); r.send(result);
} }
function clear(ctx) { function clear(ctx) {

Loading…
Cancel
Save