У меня есть два следующих файла Node.js:
//test.js
var hash=require('./hash');
var sys=require('sys');
hash.hash("asdf",function(param){
sys.puts(param);
});
и
//hash.js:
var exec=require('child_process').exec;
var sys=require('sys');
exports.hash=function(data,callback){
exec("./a.out "+data,function callback(error,stdout,stderr){
callback(stdout);
});
}
Как видите, я пытаюсь сделать stdout доступным в test.js
Проблема в том, что когда я запускаю node test.js
, я получаю следующую ошибку:
eamorr@Compaq6000:~/Desktop/simple-hash$ node test.js
node.js:134
throw e; // process.nextTick error, or 'error' event on first tick
^
RangeError: Maximum call stack size exceeded
У кого-нибудь есть идеи относительно того, что я могу делать неправильно?
Большое спасибо заранее,
Редактировать: решение: переименовать внутренний «обратный вызов» в «обратный вызов2» или что-то еще ... Спасибо Идану К. за указание на это.