From 7ee0ebd31e1526444debb29b9c42e2308ffe942c Mon Sep 17 00:00:00 2001 From: Ruben Daniels Date: Fri, 17 Apr 2015 20:51:41 +0000 Subject: [PATCH] Survive a disconnect --- package.json | 2 +- plugins/c9.ide.plugins/loader.js | 9 ++++++++- plugins/c9.ide.ui/widgets.terminal.js | 3 +-- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index a0afaf2d..dfc469a0 100644 --- a/package.json +++ b/package.json @@ -66,7 +66,7 @@ "c9.ide.find.infiles": "#72582de3cd", "c9.ide.find.replace": "#e4daf722b8", "c9.ide.run.debug": "#638e6b00b3", - "c9.automate": "#6098a6fb56", + "c9.automate": "#b1b0cca13a", "c9.ide.ace.emmet": "#e5f1a92ac3", "c9.ide.ace.gotoline": "#4d1a93172c", "c9.ide.ace.keymaps": "#43445d6306", diff --git a/plugins/c9.ide.plugins/loader.js b/plugins/c9.ide.plugins/loader.js index c7066d34..023b2bcf 100644 --- a/plugins/c9.ide.plugins/loader.js +++ b/plugins/c9.ide.plugins/loader.js @@ -55,7 +55,14 @@ define(function(require, exports, module) { var install = []; if (loadFromDisk) { - fs.readdir("~/.c9/plugins", function(error, files){ + fs.readdir("~/.c9/plugins", function handle(err, files){ + if (err) { + if (err.code == "EDISCONNECT") + fs.readdir("~/.c9/plugins", handle); + console.error(err); + return; + } + files.forEach(function(f) { if (!/^[_.]/.test(f.name)) loadOne({packageName: f.name}, false); diff --git a/plugins/c9.ide.ui/widgets.terminal.js b/plugins/c9.ide.ui/widgets.terminal.js index 4fa535a5..71c50ab2 100644 --- a/plugins/c9.ide.ui/widgets.terminal.js +++ b/plugins/c9.ide.ui/widgets.terminal.js @@ -369,8 +369,7 @@ define(function(require, exports, module) { * */ clear: function(data){ - terminal.ybase = 0; - terminal.lines = terminal.lines.slice(-(terminal.ybase + terminal.rows)); + terminal.clear(); }, /** *