Итак, если я выполню этот простой вызов в node.js v0.6.7 на OS X 10.6.8 с подделкой путь, я получаю сообщение об ошибке, как и ожидалось.
var fs = require("fs");
fs.stat("/tmp/foo", function(error, stat) {
return console.log(error);
});
Он выводит следующий результат:
{ [Error: ENOENT, no such file or directory '/tmp/foo'] errno: 34, code: 'ENOENT', path: '/tmp/foo' }
Мой вопрос, согласно /usr/include/sys/errno.h
в моей системе, ENOENT
должен иметь код 2, так почему же эта ошибка говорит об ошибке errno 34
(ERANGE в errno.h), но объединяет ее с сообщением об ошибке из ENOENT
?