From 9c8f11d123138e224aa81497fad3d2ca92f93f9a Mon Sep 17 00:00:00 2001 From: "sen.cenan@gmail.com" Date: Wed, 10 Jun 2015 11:29:03 -0400 Subject: [PATCH] Use cp instead of mv, as it would fail if tmp_dir is mounted on a different device from the plugin_dir. The tmp_dir is cleaned after copy already. --- cordova-lib/src/plugman/util/plugins.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/cordova-lib/src/plugman/util/plugins.js b/cordova-lib/src/plugman/util/plugins.js index 928881d51..4d3f6f662 100644 --- a/cordova-lib/src/plugman/util/plugins.js +++ b/cordova-lib/src/plugman/util/plugins.js @@ -50,8 +50,14 @@ module.exports = { var plugin_dir = path.join(plugins_dir, plugin_id); events.emit('verbose', 'Copying fetched plugin over "' + plugin_dir + '"...'); shell.mkdir('-p', plugin_dir); - shell.mv(path.join(tmp_dir, '*'), plugin_dir); + + // use cp instead of mv, as it would fail if tmp_dir is mounted + // on a different device from the plugin_dir + shell.cp('-R', path.join(tmp_dir, '*'), plugin_dir); + + // the tmp_dir is cleaned after copy shell.rm('-Rf', tmp_dir); + pluginInfo.dir = plugin_dir; if (pluginInfoProvider) { pluginInfoProvider.put(pluginInfo);