comparison lib/js/urweb.js @ 2280:985c8016b592

Merge.
author Ziv Scully <ziv@mit.edu>
date Thu, 12 Nov 2015 08:46:51 -0500
parents 43393a4a66ce
children fc1c89627178
comparison
equal deleted inserted replaced
2279:32a407902d3b 2280:985c8016b592
145 return Math.round(tm / 1000000); 145 return Math.round(tm / 1000000);
146 } 146 }
147 147
148 function toMilliseconds(tm) { 148 function toMilliseconds(tm) {
149 return Math.round(tm / 1000); 149 return Math.round(tm / 1000);
150 }
151
152 function fromMilliseconds(tm) {
153 return tm * 1000;
150 } 154 }
151 155
152 function addSeconds(tm, n) { 156 function addSeconds(tm, n) {
153 return tm + n * 1000000; 157 return tm + n * 1000000;
154 } 158 }
466 470
467 function onConnectFail(f) { 471 function onConnectFail(f) {
468 connectHandlers = cons(flift(f), connectHandlers); 472 connectHandlers = cons(flift(f), connectHandlers);
469 } 473 }
470 474
471 function conn() { 475 function conn(msg) {
472 runHandlers("Connect", connectHandlers, null); 476 var rx = /(.*)<body>((.|\n|\r)*)<\/body>(.*)/g;
477 var arr = rx.exec(msg);
478 msg = (arr && arr.length >= 3) ? arr[2] : msg;
479 runHandlers("RPC failure", connectHandlers, msg);
473 } 480 }
474 481
475 var serverHandlers = null; 482 var serverHandlers = null;
476 483
477 function onServerError(f) { 484 function onServerError(f) {
1464 whine("Can't unmarshal list (" + tok + ")"); 1471 whine("Can't unmarshal list (" + tok + ")");
1465 } 1472 }
1466 1473
1467 function strcmp(str1, str2) { 1474 function strcmp(str1, str2) {
1468 return ((str1 == str2) ? 0 : ((str1 > str2) ? 1 : -1)); 1475 return ((str1 == str2) ? 0 : ((str1 > str2) ? 1 : -1));
1476 }
1477
1478 function chr(n) {
1479 return String.fromCharCode(n);
1480 }
1481
1482 function htmlifySpecialChar(ch) {
1483 return "&#" + ch.charCodeAt(0) + ";";
1469 } 1484 }
1470 1485
1471 1486
1472 // Remote calls 1487 // Remote calls
1473 1488
1589 k(null); 1604 k(null);
1590 } 1605 }
1591 } 1606 }
1592 } else { 1607 } else {
1593 if (isN == null) 1608 if (isN == null)
1594 conn(); 1609 conn(xhr.responseText);
1595 else 1610 else
1596 k(null); 1611 k(null);
1597 } 1612 }
1598 1613
1599 xhrFinished(xhr); 1614 xhrFinished(xhr);