1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
|
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
|
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
|
const char *zLine = blob_buffer(&xfer.line);
if( memcmp(zLine, "# timestamp ", 12)==0 ){
char zTime[20];
double rDiff;
sqlite3_snprintf(sizeof(zTime), zTime, "%.19s", &zLine[12]);
rDiff = db_double(9e99, "SELECT julianday('%q') - %.17g",
zTime, rArrivalTime);
if( rDiff<0.0 ) rDiff = -rDiff;
if( rDiff>9e98 ) rDiff = 0.0;
if( (rDiff*24.0*3600.0)>=60.0 ){
fossil_warning("*** time skew *** server time differs by %s",
db_timespan_name(rDiff));
g.clockSkewSeen = 1;
if( rDiff>9e98 || rDiff<-9e98 ) rDiff = 0.0;
if( (rDiff*24.0*3600.0) > 10.0 ){
fossil_warning("*** time skew *** server is fast by %s",
db_timespan_name(rDiff));
g.clockSkewSeen = 1;
}else if( rDiff*24.0*3600.0 < -(blob_size(&recv)/5000.0 + 20.0) ){
fossil_warning("*** time skew *** server is slow by %s",
db_timespan_name(-rDiff));
g.clockSkewSeen = 1;
}
}
continue;
}
xfer.nToken = blob_tokenize(&xfer.line, xfer.aToken, count(xfer.aToken));
nCardRcvd++;
if( !g.cgiOutput && !g.fQuiet && recv.nUsed>0 ){
|