[seasar-dotnet:2264] S2Container.NET1.4.0のDynamicAopProxyのCreate内の条件について
[E-MAIL ADDRESS DELETED]
[E-MAIL ADDRESS DELETED]
2013年 4月 5日 (金) 16:52:09 JST
こんにちは。井上です。
Seasar.Framework.Aop.Proxy.DynamicAopProxyについて
個人的には実害はないですが、たまたま気づいたことがあったので、投稿させてい
ただきます。
ソースの172行目から189行目の以下の部分です。
---- 引用開始 ----
172 public object Create(Type receiptType, object target)
173 {
174 if (receiptType.IsInterface && target.GetType() == typeof(object))
175 {
176 if (target.GetType() == typeof(object))
177 {
178 return
_generator.CreateInterfaceProxyWithoutTarget(receiptType, _interceptors);
179 }
180 else
181 {
182 return
_generator.CreateInterfaceProxyWithTarget(receiptType, target,
_interceptors);
183 }
184 }
185 else
186 {
187 return _generator.CreateClassProxy(_componentType,
_interceptors);
188 }
189 }
---- 引用終了 ----
最初のif文(174行目)に && target.GetType() == typeof(object)があり
176行目で条件がかぶっているので182行目の
_generator.CreateInterfaceProxyWithTarget(receiptType, target,
_interceptors)
が呼び出されるパターンが無い結果になると思われます。
文脈的には、174行目のGetTypeの比較が不要なのかな?と思います。
ちなみにS2Container.NETのバージョンは1.4.0です。
では。
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://ml.seasar.org/archives/seasar-dotnet/attachments/20130405/e285d946/attachment.html>
seasar-dotnet メーリングリストの案内