imports: fix renamed sibling imports

Fix some logic errors around renamed sibling imports. The one in
findMissingImport was just a silly mistake, the one in addCandidate
was because I hadn't thought about renamed imports.

Change-Id: Iecd0b4e6151bff7b8cb6ad21065f017fb1245bfd
Reviewed-on: https://go-review.googlesource.com/c/153440
Run-TryBot: Heschi Kreinick <heschi@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
diff --git a/imports/fix.go b/imports/fix.go
index 535cfdc..d009cd5 100644
--- a/imports/fix.go
+++ b/imports/fix.go
@@ -200,10 +200,7 @@
 		if !ok {
 			continue
 		}
-		if candidate.name != "" && candidate.name != pkg {
-			continue
-		}
-		if pkgInfo.name != pkg {
+		if candidate.name != pkg && pkgInfo.name != pkg {
 			continue
 		}
 
@@ -377,7 +374,7 @@
 			if imp, ok := importsByName[left]; ok {
 				if _, ok := stdlib[imp.importPath]; ok {
 					// We have the stdlib in memory; no need to guess.
-					continue
+					rights = stdlib[imp.importPath]
 				}
 				p.addCandidate(imp, &packageInfo{
 					// no name; we already know it.
diff --git a/imports/fix_test.go b/imports/fix_test.go
index 73d92dc..ec22c60 100644
--- a/imports/fix_test.go
+++ b/imports/fix_test.go
@@ -1918,10 +1918,12 @@
 
 import "local/log"
 import "my/bytes"
+import renamed "fmt"
 
 func LogSomething() {
 	log.Print("Something")
 	bytes.SomeFunc()
+	renamed.Println("Something")
 }
 `
 
@@ -1932,6 +1934,7 @@
 
 func LogSomethingElse() {
 	log.Print("Something else")
+	renamed.Println("Yet another")
 }
 `
 
@@ -1940,6 +1943,7 @@
 
 import (
 	"bytes"
+	renamed "fmt"
 	"local/log"
 )
 
@@ -1947,6 +1951,7 @@
 
 func LogSomethingElse() {
 	log.Print("Something else")
+	renamed.Println("Yet another")
 }
 `