Use ctx.Fatalln instead of log.Fatalln for absolute path errors
log.Fatalln calls os.Exit, which skips deferred functions and leaves the console with the cursor disabled. Use ctx.Fatalln instead, which uses a panic to exit and calls the deferred function to restore the cursor. Test: DIST_DIR=/tmp/\test\ foo m dist Change-Id: Ie92297075e37c171d5ba48848a0ddb19652b051c
This commit is contained in:
parent
c0b9f6b9d2
commit
1f6faeb50f
1 changed files with 15 additions and 16 deletions
|
@ -16,7 +16,6 @@ package build
|
|||
|
||||
import (
|
||||
"io/ioutil"
|
||||
"log"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"runtime"
|
||||
|
@ -189,27 +188,27 @@ func NewConfig(ctx Context, args ...string) Config {
|
|||
checkTopDir(ctx)
|
||||
|
||||
if srcDir := absPath(ctx, "."); strings.ContainsRune(srcDir, ' ') {
|
||||
log.Println("You are building in a directory whose absolute path contains a space character:")
|
||||
log.Println()
|
||||
log.Printf("%q\n", srcDir)
|
||||
log.Println()
|
||||
log.Fatalln("Directory names containing spaces are not supported")
|
||||
ctx.Println("You are building in a directory whose absolute path contains a space character:")
|
||||
ctx.Println()
|
||||
ctx.Printf("%q\n", srcDir)
|
||||
ctx.Println()
|
||||
ctx.Fatalln("Directory names containing spaces are not supported")
|
||||
}
|
||||
|
||||
if outDir := ret.OutDir(); strings.ContainsRune(outDir, ' ') {
|
||||
log.Println("The absolute path of your output directory ($OUT_DIR) contains a space character:")
|
||||
log.Println()
|
||||
log.Printf("%q\n", outDir)
|
||||
log.Println()
|
||||
log.Fatalln("Directory names containing spaces are not supported")
|
||||
ctx.Println("The absolute path of your output directory ($OUT_DIR) contains a space character:")
|
||||
ctx.Println()
|
||||
ctx.Printf("%q\n", outDir)
|
||||
ctx.Println()
|
||||
ctx.Fatalln("Directory names containing spaces are not supported")
|
||||
}
|
||||
|
||||
if distDir := ret.DistDir(); strings.ContainsRune(distDir, ' ') {
|
||||
log.Println("The absolute path of your dist directory ($DIST_DIR) contains a space character:")
|
||||
log.Println()
|
||||
log.Printf("%q\n", distDir)
|
||||
log.Println()
|
||||
log.Fatalln("Directory names containing spaces are not supported")
|
||||
ctx.Println("The absolute path of your dist directory ($DIST_DIR) contains a space character:")
|
||||
ctx.Println()
|
||||
ctx.Printf("%q\n", distDir)
|
||||
ctx.Println()
|
||||
ctx.Fatalln("Directory names containing spaces are not supported")
|
||||
}
|
||||
|
||||
// Configure Java-related variables, including adding it to $PATH
|
||||
|
|
Loading…
Reference in a new issue