Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions cmd/sqlcmd/sqlcmd.go
Original file line number Diff line number Diff line change
Expand Up @@ -331,20 +331,20 @@ func checkDefaultValue(args []string, i int) (val string) {
'L': "|", // | is the sentinel for no value since users are unlikely to use it. It's "reserved" in most shells
'X': "0",
}
if isFlag(args[i]) && len(args[i]) == 2 && (len(args) == i+1 || args[i+1][0] == '-') {
if isFlag(args[i]) && len(args[i]) == 2 && (len(args) == i+1 || isFlag(args[i+1])) {
if v, ok := flags[rune(args[i][1])]; ok {
val = v
return
}
}
if args[i] == "-N" && (len(args) == i+1 || args[i+1][0] == '-') {
if args[i] == "-N" && (len(args) == i+1 || isFlag(args[i+1])) {
val = "true"
}
return
}

func isFlag(arg string) bool {
return arg[0] == '-'
return len(arg) > 0 && arg[0] == '-'
}

func isListFlag(arg string) bool {
Expand Down
5 changes: 5 additions & 0 deletions cmd/sqlcmd/sqlcmd_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -584,6 +584,11 @@ func TestConvertOsArgs(t *testing.T) {
[]string{"-X", "-k2"},
[]string{"-X", "0", "-k2"},
},
{
"flag with empty value",
[]string{"-S", "server", "-U", "sa", "-d", "", "-Q", "SELECT 1", "-b"},
[]string{"-S", "server", "-U", "sa", "-d", "", "-Q", "SELECT 1", "-b"},
},
Comment thread
debarshibasak marked this conversation as resolved.
}
for _, c := range tests {
t.Run(c.name, func(t *testing.T) {
Expand Down
Loading