diff --git a/internal/encoding/text/decode.go b/internal/encoding/text/decode.go
index 8ab2eb4..b497090 100644
--- a/internal/encoding/text/decode.go
+++ b/internal/encoding/text/decode.go
@@ -449,7 +449,7 @@
 		case s[0] == '/', s[0] == '.':
 			if len(name) > 0 && (name[len(name)-1] == '/' || name[len(name)-1] == '.') {
 				return Token{}, d.newSyntaxError("invalid type URL/extension field name: %s",
-					d.in[startPos:len(d.orig)-len(s)+1])
+					d.orig[startPos:len(d.orig)-len(s)+1])
 			}
 			name = append(name, s[0])
 			s = s[1:]
@@ -462,7 +462,7 @@
 
 		default:
 			return Token{}, d.newSyntaxError(
-				"invalid type URL/extension field name: %s", d.in[startPos:len(d.orig)-len(s)+1])
+				"invalid type URL/extension field name: %s", d.orig[startPos:len(d.orig)-len(s)+1])
 		}
 	}
 
@@ -474,7 +474,7 @@
 	size := len(name)
 	if size == 0 || name[0] == '.' || name[size-1] == '.' || name[size-1] == '/' {
 		return Token{}, d.newSyntaxError("invalid type URL/extension field name: %s",
-			d.in[startPos:len(d.orig)-len(s)])
+			d.orig[startPos:len(d.orig)-len(s)])
 	}
 
 	d.in = s
diff --git a/internal/encoding/text/decode_test.go b/internal/encoding/text/decode_test.go
index 41c5e6d..25ef83a 100644
--- a/internal/encoding/text/decode_test.go
+++ b/internal/encoding/text/decode_test.go
@@ -462,6 +462,30 @@
 			want: []R{{E: "invalid type URL/extension field name: [proto.package/"}},
 		},
 		{
+			in: `message_field{[bad@]`,
+			want: []R{
+				{K: text.Name},
+				{K: text.MessageOpen},
+				{E: `invalid type URL/extension field name: [bad@`},
+			},
+		},
+		{
+			in: `message_field{[invalid//type]`,
+			want: []R{
+				{K: text.Name},
+				{K: text.MessageOpen},
+				{E: `invalid type URL/extension field name: [invalid//`},
+			},
+		},
+		{
+			in: `message_field{[proto.package.]`,
+			want: []R{
+				{K: text.Name},
+				{K: text.MessageOpen},
+				{E: `invalid type URL/extension field name: [proto.package.`},
+			},
+		},
+		{
 			in:   "[proto.package",
 			want: []R{{E: eofErr}},
 		},
@@ -1538,7 +1562,8 @@
 	for _, tc := range tests {
 		t.Run("", func(t *testing.T) {
 			tc := tc
-			dec := text.NewDecoder([]byte(tc.in))
+			in := []byte(tc.in)
+			dec := text.NewDecoder(in[:len(in):len(in)])
 			for i, want := range tc.want {
 				peekTok, peekErr := dec.Peek()
 				tok, err := dec.Read()
