proto: inline the implementation of protoimpl.X.ExtensionDescFromType (#1056)

diff --git a/proto/extensions.go b/proto/extensions.go
index d78d258..65e1295 100644
--- a/proto/extensions.go
+++ b/proto/extensions.go
@@ -286,8 +286,10 @@
 	extDescs := make(map[protoreflect.FieldNumber]*ExtensionDesc)
 	mr.Range(func(fd protoreflect.FieldDescriptor, v protoreflect.Value) bool {
 		if fd.IsExtension() {
-			xts := fd.(protoreflect.ExtensionTypeDescriptor)
-			extDescs[fd.Number()] = protoimpl.X.ExtensionDescFromType(xts.Type())
+			xt := fd.(protoreflect.ExtensionTypeDescriptor)
+			if xd, ok := xt.Type().(*ExtensionDesc); ok {
+				extDescs[fd.Number()] = xd
+			}
 		}
 		return true
 	})