Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/npm/cli.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorisaacs <i@izs.me>2012-06-05 00:49:28 +0400
committerisaacs <i@izs.me>2012-06-05 00:49:28 +0400
commit9dd369c05a2f899725d4ca3070389061cbcc1e5e (patch)
treef94255f2f903845633d187c22c4b99c4c609a291 /lib/bugs.js
parent5bdeead0b17dc995abde5710a4c25ea1891d8a00 (diff)
Open bug/doc urls properly on windows
Diffstat (limited to 'lib/bugs.js')
-rw-r--r--lib/bugs.js24
1 files changed, 18 insertions, 6 deletions
diff --git a/lib/bugs.js b/lib/bugs.js
index 7982746cf..2a9352632 100644
--- a/lib/bugs.js
+++ b/lib/bugs.js
@@ -41,10 +41,22 @@ function bugs (args, cb) {
}
function open (url, cb) {
- exec(npm.config.get("browser"), [url], log.er(cb,
- "Failed to open "+url+" in a browser. It could be that the\n"+
- "'browser' config is not set. Try doing this:\n"+
- " npm config set browser google-chrome\n"+
- "or:\n"+
- " npm config set browser lynx\n"))
+ var args = [url]
+ , browser = npm.config.get("browser")
+
+ if (process.platform === "win32" && browser === "start") {
+ args = [ "/c", "start" ].concat(args)
+ browser = "cmd"
+ }
+
+ if (!browser) {
+ var er = ["the 'browser' config is not set. Try doing this:"
+ ," npm config set browser google-chrome"
+ ,"or:"
+ ," npm config set browser lynx"].join("\n")
+ return cb(er)
+ }
+
+ exec(browser, args, process.env, false, function () {})
+ cb()
}