diff --git a/internal/errors/errors.go b/internal/errors/errors.go
index 4fddf39..377d2ab 100644
--- a/internal/errors/errors.go
+++ b/internal/errors/errors.go
@@ -116,7 +116,7 @@
 // returns an error that has a "proto" prefix.
 func New(f string, x ...interface{}) error {
 	for i := 0; i < len(x); i++ {
-		if e, ok := x[i].(prefixError); ok {
+		if e, ok := x[i].(*prefixError); ok {
 			x[i] = e.s // avoid "proto: " prefix when chaining
 		}
 	}
diff --git a/internal/errors/errors_test.go b/internal/errors/errors_test.go
index 8dd635e..1d6464d 100644
--- a/internal/errors/errors_test.go
+++ b/internal/errors/errors_test.go
@@ -7,6 +7,7 @@
 import (
 	"errors"
 	"reflect"
+	"strings"
 	"testing"
 )
 
@@ -91,3 +92,24 @@
 
 func (customRequiredNotSetError) Error() string        { return "required field not set" }
 func (customRequiredNotSetError) RequiredNotSet() bool { return true }
+
+func TestNewPrefix(t *testing.T) {
+	e1 := New("abc")
+	got := e1.Error()
+	if !strings.HasPrefix(got, "proto:") {
+		t.Errorf("missing \"proto:\" prefix in %q", got)
+	}
+	if !strings.Contains(got, "abc") {
+		t.Errorf("missing text \"abc\" in %q", got)
+	}
+
+	e2 := New("%v", e1)
+	got = e2.Error()
+	if !strings.HasPrefix(got, "proto:") {
+		t.Errorf("missing \"proto:\" prefix in %q", got)
+	}
+	// Test to make sure prefix is removed from the embedded error.
+	if strings.Contains(strings.TrimPrefix(got, "proto:"), "proto:") {
+		t.Errorf("prefix \"proto:\" not elided in embedded error: %q", got)
+	}
+}
