X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=server%2Fserve-analysis.js;h=4c9a24e9a2abf922e59a273c425a9f5cb3d32337;hb=d5eb627aab9c1ebfeb6bf1ee5affe4376e46e21e;hp=41610e1439d733d2f73c0389351f711454a5e9a0;hpb=d5e047ca5c28b2a6e4be62b7ee7cb3f11552f028;p=remoteglot diff --git a/server/serve-analysis.js b/server/serve-analysis.js index 41610e1..4c9a24e 100644 --- a/server/serve-analysis.js +++ b/server/serve-analysis.js @@ -157,6 +157,23 @@ var create_json_historic_diff = function(new_json, history_left, new_diff_json, }); } +function read_entire_file(filename, callback) { + fs.open(filename, 'r', function(err, fd) { + if (err) throw err; + fs.fstat(fd, function(err, st) { + if (err) throw err; + var buffer = new Buffer(1048576); + fs.read(fd, buffer, 0, 1048576, 0, function(err, bytesRead, buffer) { + if (err) throw err; + fs.close(fd, function() { + var contents = buffer.toString('utf8', 0, bytesRead); + callback(contents, st.mtime.getTime()); + }); + }); + }); + }); +} + var reread_file = function(event, filename) { if (filename != path.basename(json_filename)) { return; @@ -173,19 +190,8 @@ var reread_file = function(event, filename) { json_lock = 1; console.log("Rereading " + json_filename); - fs.open(json_filename, 'r', function(err, fd) { - if (err) throw err; - fs.fstat(fd, function(err, st) { - if (err) throw err; - var buffer = new Buffer(1048576); - fs.read(fd, buffer, 0, 1048576, 0, function(err, bytesRead, buffer) { - if (err) throw err; - fs.close(fd, function() { - var new_json_contents = buffer.toString('utf8', 0, bytesRead); - replace_json(new_json_contents, st.mtime.getTime()); - }); - }); - }); + read_entire_file(json_filename, function(new_json_contents, mtime) { + replace_json(new_json_contents, mtime); }); if (touch_timer !== undefined) { @@ -368,12 +374,7 @@ server.on('request', function(request, response) { mark_recently_seen(unique); var accept_encoding = request.headers['accept-encoding']; - var accept_gzip; - if (accept_encoding !== undefined && accept_encoding.match(/\bgzip\b/)) { - accept_gzip = true; - } else { - accept_gzip = false; - } + let accept_gzip = (accept_encoding !== undefined && accept_encoding.match(/\bgzip\b/)); // If we already have something newer than what the user has, // just send it out and be done with it.