Merge pull request +15298 from c9/ide-vfs-silence-enoent

silence enoent errors
pull/125/merge
Harutyun Amirjanyan 2017-04-21 12:44:36 +04:00 zatwierdzone przez GitHub
commit 36f53800ac
4 zmienionych plików z 11 dodań i 15 usunięć

15
node_modules/vfs-http-adapter/restful.js wygenerowano vendored
Wyświetl plik

@ -10,7 +10,9 @@ module.exports = function setup(mount, vfs, mountOptions) {
if (!mountOptions) mountOptions = {};
var errorHandler = mountOptions.errorHandler || function (req, res, err, code) {
console.error(err.stack || err);
// do not show ENOENT errors in browser console
if (err.code != "ENOENT")
console.error(err.stack || err);
if (res.headersSent) {
res.end("");
return;
@ -20,12 +22,12 @@ module.exports = function setup(mount, vfs, mountOptions) {
else if (typeof err.code == "number" && isValidStatusCode(err.code)) res.statusCode = err.code;
else if (err.code === "EBADREQUEST") res.statusCode = 400;
else if (err.code === "EACCES") res.statusCode = 403;
else if (err.code === "ENOENT") res.statusCode = 404;
else if (err.code === "ENOENT") res.statusCode = 200; // don't trigger error in browser (rely on Content-Type)
else if (err.code === "ENOTREADY") res.statusCode = 503;
else if (err.code === "EISDIR") res.statusCode = 503;
else res.statusCode = 500;
var message = (err.message || err.toString()) + "\n";
res.setHeader("Content-Type", "text/plain");
res.setHeader("Content-Type", "text/x-error");
res.setHeader("Content-Length", Buffer.byteLength(message));
res.end(message);
};
@ -40,13 +42,6 @@ module.exports = function setup(mount, vfs, mountOptions) {
output.readable = true;
var first = true;
input.on("data", function (entry) {
if (path) {
entry.href = path + entry.name;
var mime = entry.linkStat ? entry.linkStat.mime : entry.mime;
if (/(directory|folder)$/.test(mime)) {
entry.href += "/";
}
}
if (first) {
output.emit("data", "[\n " + JSON.stringify(entry));
first = false;

Wyświetl plik

@ -119,11 +119,11 @@ define(function(require, module, exports) {
}
}
if (this.status > 299) {
if (xhr.status > 299 || res.headers["content-type"] == "text/x-error") {
var err = new Error(xhr.responseText);
err.code = xhr.status;
if (debug)
console.error("HTTP error " + this.status + ": " + xhr.responseText);
if (debug && xhr.status > 299)
console.error("HTTP error " + xhr.status + ": " + xhr.responseText);
return done(err, data, res);
}

Wyświetl plik

@ -167,7 +167,7 @@ define(function(require, exports, module) {
port: parsedUrl.port,
headers: req.headers
}, function(request) {
if (request.statusCode >= 400)
if (request.statusCode >= 400 || request.headers["content-type"] == "text/x-error")
handleError(request);
else if (isDir)
serveListing(request);

Wyświetl plik

@ -1,6 +1,7 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Cloud9 Preview</title>
<link rel="stylesheet" type="text/css" href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" />
</head>
@ -24,7 +25,7 @@
<tr>
<td>
<span class="glyphicon <%= entry.mime == 'inode/directory' ? 'glyphicon-folder-close': 'glyphicon-file'%>"></span>
<a href="<%= escape(entry.name) %>"><%= entry.name %></a>
<a href="<%= global.escape(entry.name) %>"><%= entry.name %></a>
</td>
<td><%= entry.mime %></td>
<td><%= entry.size %></td>