x/tools/internal/imports: don't load package names for empty list

goimports should not attempt to load package names for an empty list
of packages. 'go list' interprets an empty argument list as '.', which
may or may not be a package.

Fixes golang/go#33175

Change-Id: Id8df148432437295905c52f2d5fb73d890277569
Reviewed-on: https://go-review.googlesource.com/c/tools/+/188379
Run-TryBot: Jay Conrod <jayconrod@google.com>
Reviewed-by: Heschi Kreinick <heschi@google.com>
diff --git a/internal/imports/fix.go b/internal/imports/fix.go
index 615dc01..c2e83af 100644
--- a/internal/imports/fix.go
+++ b/internal/imports/fix.go
@@ -714,6 +714,9 @@
 }
 
 func (r *goPackagesResolver) loadPackageNames(importPaths []string, srcDir string) (map[string]string, error) {
+	if len(importPaths) == 0 {
+		return nil, nil
+	}
 	cfg := r.env.newPackagesConfig(packages.LoadFiles)
 	pkgs, err := packages.Load(cfg, importPaths...)
 	if err != nil {
diff --git a/internal/imports/fix_test.go b/internal/imports/fix_test.go
index 46145cf..d15b6dd 100644
--- a/internal/imports/fix_test.go
+++ b/internal/imports/fix_test.go
@@ -1306,7 +1306,6 @@
 				"myotherpackage/toformat.go": input,
 			},
 		},
-		goPackagesIncompatible: true, // https://golang.org/issue/33175
 	}.processTest(t, "golang.org/fake", "myotherpackage/toformat.go", nil, nil, want)
 }
 
@@ -1435,7 +1434,6 @@
 				"bar/x.go":           input,
 			},
 		},
-		goPackagesIncompatible: true, // https://golang.org/issue/33175
 	}.processTest(t, "foo.com", "bar/x.go", nil, nil, importAdded)
 
 	// Packages outside the same directory should not.
@@ -1648,7 +1646,6 @@
 				"test/t.go":        input,
 			},
 		},
-		goPackagesIncompatible: true, // https://golang.org/issue/33175
 	}.processTest(t, "foo.com", "test/t.go", nil, nil, want)
 }
 
@@ -1836,7 +1833,6 @@
 				"x/x.go":     input,
 			},
 		},
-		goPackagesIncompatible: true, // https://golang.org/issue/33175
 	}.processTest(t, "foo.com", "x/x.go", nil, nil, want)
 }
 
@@ -2143,7 +2139,6 @@
 				"pkg/x_test.go":  input,
 			},
 		},
-		goPackagesIncompatible: true, // https://golang.org/issue/33175
 	}.processTest(t, "foo.com", "pkg/x_test.go", nil, nil, want)
 }