internal/lsp/cmd: fix a nil pointer and some minor clean-up
This change fixes a nil error, in addition to cleaning up a spacing
error and a typo. It also fixes the golint errors in internal/lsp/cmd.
Updates golang/go#30091
Change-Id: I24867bb878fda4e341f87d31bbec701a3814a341
Reviewed-on: https://go-review.googlesource.com/c/161220
Reviewed-by: Ian Cottrell <iancottrell@google.com>
Run-TryBot: Rebecca Stambler <rstambler@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
diff --git a/internal/lsp/cmd/cmd.go b/internal/lsp/cmd/cmd.go
index b054dcf..694f859 100644
--- a/internal/lsp/cmd/cmd.go
+++ b/internal/lsp/cmd/cmd.go
@@ -12,6 +12,7 @@
"flag"
"fmt"
"go/token"
+
"golang.org/x/tools/go/packages"
"golang.org/x/tools/internal/tool"
)
diff --git a/internal/lsp/cmd/location.go b/internal/lsp/cmd/location.go
index 35e2580..29372b7 100644
--- a/internal/lsp/cmd/location.go
+++ b/internal/lsp/cmd/location.go
@@ -99,43 +99,43 @@
}
loc.Filename = m[posReFile]
if m[posReSLine] != "" {
- if v, err := strconv.ParseInt(m[posReSLine], 10, 32); err != nil {
+ v, err := strconv.ParseInt(m[posReSLine], 10, 32)
+ if err != nil {
return loc, err
- } else {
- loc.Start.Line = int(v)
}
- if v, err := strconv.ParseInt(m[posReSCol], 10, 32); err != nil {
+ loc.Start.Line = int(v)
+ v, err = strconv.ParseInt(m[posReSCol], 10, 32)
+ if err != nil {
return loc, err
- } else {
- loc.Start.Column = int(v)
}
+ loc.Start.Column = int(v)
} else {
- if v, err := strconv.ParseInt(m[posReSOff], 10, 32); err != nil {
+ v, err := strconv.ParseInt(m[posReSOff], 10, 32)
+ if err != nil {
return loc, err
- } else {
- loc.Start.Offset = int(v)
}
+ loc.Start.Offset = int(v)
}
if m[posReEnd] == "" {
loc.End = loc.Start
} else {
if m[posReELine] != "" {
- if v, err := strconv.ParseInt(m[posReELine], 10, 32); err != nil {
+ v, err := strconv.ParseInt(m[posReELine], 10, 32)
+ if err != nil {
return loc, err
- } else {
- loc.End.Line = int(v)
}
- if v, err := strconv.ParseInt(m[posReECol], 10, 32); err != nil {
+ loc.End.Line = int(v)
+ v, err = strconv.ParseInt(m[posReECol], 10, 32)
+ if err != nil {
return loc, err
- } else {
- loc.End.Column = int(v)
}
+ loc.End.Column = int(v)
} else {
- if v, err := strconv.ParseInt(m[posReEOff], 10, 32); err != nil {
+ v, err := strconv.ParseInt(m[posReEOff], 10, 32)
+ if err != nil {
return loc, err
- } else {
- loc.End.Offset = int(v)
}
+ loc.End.Offset = int(v)
}
}
return loc, nil
diff --git a/internal/lsp/cmd/query.go b/internal/lsp/cmd/query.go
index 3d0bf30..5ab520f 100644
--- a/internal/lsp/cmd/query.go
+++ b/internal/lsp/cmd/query.go
@@ -24,7 +24,7 @@
// query implements the query command.
type query struct {
JSON bool `flag:"json" help:"emit output in JSON format"`
- Emulate string `flag:"emulate" help:"compatability mode, causes gopls to emulate another tool.\nvalues depend on the operation being performed"`
+ Emulate string `flag:"emulate" help:"compatibility mode, causes gopls to emulate another tool.\nvalues depend on the operation being performed"`
app *Application
}
diff --git a/internal/lsp/cmd/server.go b/internal/lsp/cmd/server.go
index e205052..72993e6 100644
--- a/internal/lsp/cmd/server.go
+++ b/internal/lsp/cmd/server.go
@@ -101,7 +101,10 @@
msec := int(elapsed.Round(time.Millisecond) / time.Millisecond)
fmt.Fprintf(outx, " in %dms", msec)
}
- params := string(*payload)
+ params := "null"
+ if payload != nil {
+ params = string(*payload)
+ }
if params == "null" {
params = "{}"
}