1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00

escape os.exec('"$vexec"') to support directories with spaces

This commit is contained in:
vitalyster 2019-10-16 02:49:51 +03:00 committed by Alexander Medvednikov
parent 69b4594bb3
commit 0e0f0ae5ea
4 changed files with 6 additions and 6 deletions

View File

@ -983,7 +983,7 @@ pub fn install_v(args[]string) {
if true {
//println('Building vget...')
os.chdir(vroot + '/tools')
vget_compilation := os.exec('$vexec -o $vget vget.v') or {
vget_compilation := os.exec('"$vexec" -o $vget vget.v') or {
verror(err)
return
}

View File

@ -133,7 +133,7 @@ pub fn run_repl() []string {
if r.line.starts_with('print') {
source_code := r.functions.join('\n') + r.lines.join('\n') + '\n' + r.line
os.write_file(file, source_code)
s := os.exec('$vexe run $file -repl') or {
s := os.exec('"$vexe" run $file -repl') or {
verror(err)
return []string
}
@ -152,7 +152,7 @@ pub fn run_repl() []string {
}
temp_source_code := r.functions.join('\n') + r.lines.join('\n') + '\n' + r.temp_lines.join('\n') + '\n' + temp_line
os.write_file(temp_file, temp_source_code)
s := os.exec('$vexe run $temp_file -repl') or {
s := os.exec('"$vexe" run $temp_file -repl') or {
verror(err)
return []string
}

View File

@ -7,12 +7,12 @@ fn test_the_v_compiler_can_be_invoked() {
println('vexecutable: $vexec')
assert vexec != ''
vcmd := '$vexec --version'
vcmd := '"$vexec" --version'
r := os.exec(vcmd) or { panic(err) }
//println('"$vcmd" exit_code: $r.exit_code | output: $r.output')
assert r.exit_code == 0
vcmd_error := '$vexec nonexisting.v'
vcmd_error := '"$vexec" nonexisting.v'
r_error := os.exec(vcmd_error) or { panic(err) }
//println('"$vcmd_error" exit_code: $r_error.exit_code | output: $r_error.output')
assert r_error.exit_code == 1

View File

@ -48,7 +48,7 @@ pub fn run_repl_file(wd string, vexec string, file string) ?string {
input_temporary_filename := 'input_temporary_filename.txt'
os.write_file(input_temporary_filename, input)
r := os.exec('$vexec runrepl < $input_temporary_filename') or {
r := os.exec('"$vexec" runrepl < $input_temporary_filename') or {
os.rm(input_temporary_filename)
return error('Could not execute "$vexec runrepl < $input_temporary_filename" ')
}