summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Alfredsen <loki_val@gentoo.org>2009-01-25 13:23:40 +0000
committerPeter Alfredsen <loki_val@gentoo.org>2009-01-25 13:23:40 +0000
commit5589391bdd240a3e9b0bb6871b9e56e2c0c0a844 (patch)
tree650be701993dab4bf3aa86775a56c82a66286e3b /dev-lang
parentRemove warning about hardened from latest open-vm-tools. Closes bug 200376. (diff)
downloadgentoo-2-5589391bdd240a3e9b0bb6871b9e56e2c0c0a844.tar.gz
gentoo-2-5589391bdd240a3e9b0bb6871b9e56e2c0c0a844.tar.bz2
gentoo-2-5589391bdd240a3e9b0bb6871b9e56e2c0c0a844.zip
Add fix for bug 256153, bless crash upstream bug 469213
(Portage version: 2.2_rc23/cvs/Linux x86_64)
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/mono/ChangeLog9
-rw-r--r--dev-lang/mono/files/mono-2.2-r123987-bless-crash.patch31
-rw-r--r--dev-lang/mono/mono-2.2-r3.ebuild (renamed from dev-lang/mono/mono-2.2-r2.ebuild)3
3 files changed, 41 insertions, 2 deletions
diff --git a/dev-lang/mono/ChangeLog b/dev-lang/mono/ChangeLog
index 5a64e0f0abcb..6530a651fd42 100644
--- a/dev-lang/mono/ChangeLog
+++ b/dev-lang/mono/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for dev-lang/mono
# Copyright 2002-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/mono/ChangeLog,v 1.151 2009/01/20 13:51:44 loki_val Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/mono/ChangeLog,v 1.152 2009/01/25 13:23:40 loki_val Exp $
+
+*mono-2.2-r3 (25 Jan 2009)
+
+ 25 Jan 2009; Peter Alfredsen <loki_val@gentoo.org>
+ +files/mono-2.2-r123987-bless-crash.patch, -mono-2.2-r2.ebuild,
+ +mono-2.2-r3.ebuild:
+ Add fix for bug 256153, bless crash upstream bug 469213
*mono-2.2-r2 (20 Jan 2009)
diff --git a/dev-lang/mono/files/mono-2.2-r123987-bless-crash.patch b/dev-lang/mono/files/mono-2.2-r123987-bless-crash.patch
new file mode 100644
index 000000000000..1be03542a375
--- /dev/null
+++ b/dev-lang/mono/files/mono-2.2-r123987-bless-crash.patch
@@ -0,0 +1,31 @@
+# http://gna.org/bugs/?12900
+# https://bugzilla.novell.com/show_bug.cgi?id=469213
+# http://bugs.gentoo.org/show_bug.cgi?id=256153
+
+Index: mono/mono/mini/method-to-ir.c
+===================================================================
+--- mono/mono/mini/method-to-ir.c (revision 123986)
++++ mono/mono/mini/method-to-ir.c (revision 123987)
+@@ -5839,7 +5839,21 @@
+ cmethod = (MonoMethod *)mono_method_get_wrapper_data (method, token);
+ cil_method = cmethod;
+ } else if (constrained_call) {
+- cmethod = mono_get_method_constrained (image, token, constrained_call, generic_context, &cil_method);
++ if ((constrained_call->byval_arg.type == MONO_TYPE_VAR || constrained_call->byval_arg.type == MONO_TYPE_MVAR) && cfg->generic_sharing_context) {
++ /* This is needed when using aot + generic sharing, since
++ * the AOT code allows generic sharing for methods with
++ * type parameters having constraints, and
++ * get_method_constrained can't find the method in klass
++ * representing a type var.
++ * The type var is guaranteed to be a reference type in this
++ * case.
++ */
++ cmethod = mini_get_method (cfg, method, token, NULL, generic_context);
++ cil_method = cmethod;
++ g_assert (!cmethod->klass->valuetype);
++ } else {
++ cmethod = mono_get_method_constrained (image, token, constrained_call, generic_context, &cil_method);
++ }
+ } else {
+ cmethod = mini_get_method (cfg, method, token, NULL, generic_context);
+ cil_method = cmethod;
diff --git a/dev-lang/mono/mono-2.2-r2.ebuild b/dev-lang/mono/mono-2.2-r3.ebuild
index 58d0d2f9b936..3518f0ec35be 100644
--- a/dev-lang/mono/mono-2.2-r2.ebuild
+++ b/dev-lang/mono/mono-2.2-r3.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-lang/mono/mono-2.2-r2.ebuild,v 1.2 2009/01/20 22:44:06 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-lang/mono/mono-2.2-r3.ebuild,v 1.1 2009/01/25 13:23:40 loki_val Exp $
EAPI=2
@@ -40,6 +40,7 @@ PATCHES=(
"${FILESDIR}/mono-2.2-ppc-threading.patch"
"${FILESDIR}/mono-2.2-uselibdir.patch"
"${FILESDIR}/mono-2.2-r121596-work-around-runtime-crash.patch"
+ "${FILESDIR}/mono-2.2-r123987-bless-crash.patch"
)
pkg_setup() {