diff options
author | Ankit Jain <radical@corewars.org> | 2008-07-02 00:23:59 +0400 |
---|---|---|
committer | Ankit Jain <radical@corewars.org> | 2008-07-02 00:23:59 +0400 |
commit | 3bc293b642b128b583e93f4e55abc74e0739b05f (patch) | |
tree | 82cb2fe1b7d1f742cb9ec2ec2886fc4ef103b33a /mcs/ilasm | |
parent | 29a6d496361924c19fd0d5d72a1b97c8e267ee01 (diff) |
In ilasm/codegen:
Fix bug #405383
* MethodPointerTypeRef (Clone): Add missing null ref check.
Patch from Andrea Carlo Ornstein <andrea.ornstein@st.com>
In ilasm/tests:
* test-method-pointer.il: New.
svn path=/trunk/mcs/; revision=107007
Diffstat (limited to 'mcs/ilasm')
-rw-r--r-- | mcs/ilasm/codegen/ChangeLog | 6 | ||||
-rw-r--r-- | mcs/ilasm/codegen/MethodPointerTypeRef.cs | 3 | ||||
-rw-r--r-- | mcs/ilasm/tests/ChangeLog | 4 | ||||
-rw-r--r-- | mcs/ilasm/tests/test-method-pointer.il | 14 |
4 files changed, 26 insertions, 1 deletions
diff --git a/mcs/ilasm/codegen/ChangeLog b/mcs/ilasm/codegen/ChangeLog index 5c392d92169..bab6815d1c2 100644 --- a/mcs/ilasm/codegen/ChangeLog +++ b/mcs/ilasm/codegen/ChangeLog @@ -1,3 +1,9 @@ +2008-07-02 Ankit Jain <jankit@novell.com> + + Fix bug #405383 + * MethodPointerTypeRef (Clone): Add missing null ref check. + Patch from Andrea Carlo Ornstein <andrea.ornstein@st.com> + 2008-06-07 Martin Baulig <martin@ximian.com> * DebuggingInfo.cs: Reflect latest symbol writer changes. diff --git a/mcs/ilasm/codegen/MethodPointerTypeRef.cs b/mcs/ilasm/codegen/MethodPointerTypeRef.cs index 689a355e5a1..ca33f854a19 100644 --- a/mcs/ilasm/codegen/MethodPointerTypeRef.cs +++ b/mcs/ilasm/codegen/MethodPointerTypeRef.cs @@ -62,7 +62,8 @@ namespace Mono.ILASM { public override BaseTypeRef Clone () { - return new MethodPointerTypeRef (callconv, ret, (ArrayList) param_list.Clone (), + return new MethodPointerTypeRef (callconv, ret, + param_list == null ? null : (ArrayList) param_list.Clone (), (ArrayList) ConversionList.Clone (), sig_mod); } diff --git a/mcs/ilasm/tests/ChangeLog b/mcs/ilasm/tests/ChangeLog index c2d553901f8..425e0b97308 100644 --- a/mcs/ilasm/tests/ChangeLog +++ b/mcs/ilasm/tests/ChangeLog @@ -1,3 +1,7 @@ +2008-07-02 Ankit Jain <jankit@novell.com> + + * test-method-pointer.il: New. + 2007-12-31 Rodrigo Kumpera <rkumpera@novell.com> * test-emitbyte.il: new test for .emitbyte directive diff --git a/mcs/ilasm/tests/test-method-pointer.il b/mcs/ilasm/tests/test-method-pointer.il new file mode 100644 index 00000000000..035e56ee1e1 --- /dev/null +++ b/mcs/ilasm/tests/test-method-pointer.il @@ -0,0 +1,14 @@ +//From bug: #405383 + +.assembly 'test-method-pointer' +{ +} +.module 'test-method-pointer.dll' + +.class public auto ansi Test extends [mscorlib]System.Object { + + // field referencing a method pointer with no params + .field private static method void * () * 'p?fs1515' + + .field private static method void * (int32, uint8) * mptr +} |