[csw-devel] SF.net SVN: gar:[17023] csw/mgar/pkg/ruby19/trunk

bdwalton at users.sourceforge.net bdwalton at users.sourceforge.net
Sun Feb 12 14:46:42 CET 2012


Revision: 17023
          http://gar.svn.sourceforge.net/gar/?rev=17023&view=rev
Author:   bdwalton
Date:     2012-02-12 13:46:41 +0000 (Sun, 12 Feb 2012)
Log Message:
-----------
ruby19/trunk: backport a patch to the garbage collector specific to studio 12.2

Modified Paths:
--------------
    csw/mgar/pkg/ruby19/trunk/Makefile

Added Paths:
-----------
    csw/mgar/pkg/ruby19/trunk/files/0002-vm.c-vm_define_method-improve-guard-of-iseq-from-GC..patch

Modified: csw/mgar/pkg/ruby19/trunk/Makefile
===================================================================
--- csw/mgar/pkg/ruby19/trunk/Makefile	2012-02-12 12:03:35 UTC (rev 17022)
+++ csw/mgar/pkg/ruby19/trunk/Makefile	2012-02-12 13:46:41 UTC (rev 17023)
@@ -4,6 +4,9 @@
 CATEGORIES = lang
 GARTYPE = v2
 
+# patchfile 0002-vm.c... is a backport from upstream
+VERSION_FLAG_PATCH = 1
+
 PACKAGING_PLATFORMS = solaris10-sparc solaris10-i386
 
 # Working with Jens Deppe, we've determined that the two failing tests
@@ -81,6 +84,7 @@
 DISTFILES  = $(DISTNAME).tar.gz
 
 PATCHFILES += 0001-Skip-a-chmod-fileutils-test-on-solaris.patch
+PATCHFILES += 0002-vm.c-vm_define_method-improve-guard-of-iseq-from-GC..patch
 PATCHFILES += 0003-Use-echo-port-instead-of-http-for-gem-server-test.patch
 
 # We define upstream file regex so we can be notifed of new upstream

Added: csw/mgar/pkg/ruby19/trunk/files/0002-vm.c-vm_define_method-improve-guard-of-iseq-from-GC..patch
===================================================================
--- csw/mgar/pkg/ruby19/trunk/files/0002-vm.c-vm_define_method-improve-guard-of-iseq-from-GC..patch	                        (rev 0)
+++ csw/mgar/pkg/ruby19/trunk/files/0002-vm.c-vm_define_method-improve-guard-of-iseq-from-GC..patch	2012-02-12 13:46:41 UTC (rev 17023)
@@ -0,0 +1,47 @@
+From 8457bea9ab5394cb43f4d5019ccb8836675366ad Mon Sep 17 00:00:00 2001
+From: ngoto <ngoto at b2dd03c8-39d4-4d8f-98ff-823fe69b080e>
+Date: Sun, 18 Dec 2011 09:58:31 +0000
+Subject: [PATCH] * vm.c (vm_define_method): improve guard of iseq from GC. 
+ Fix   failure or segmentation fault in
+ test_singleton_method(TestGc)   on sparc Solaris10 compiled
+ with Oracle Solaris Studio 12.2.   [Bug #5762]
+ [ruby-dev:45000] [Bug #4178]
+
+git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
+---
+ ChangeLog |    7 +++++++
+ vm.c      |    3 +--
+ 2 files changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/ChangeLog b/ChangeLog
+index 01be941..8dd6907 100644
+--- a/ChangeLog
++++ b/ChangeLog
+@@ -1,3 +1,10 @@
++Sun Dec 18 18:52:37 2011  Naohisa Goto  <ngotogenome at gmail.com>
++
++	* vm.c (vm_define_method): improve guard of iseq from GC.  Fix
++	  failure or segmentation fault in test_singleton_method(TestGc)
++	  on sparc Solaris10 compiled with Oracle Solaris Studio 12.2.
++	  [Bug #5762] [ruby-dev:45000] [Bug #4178]
++
+ Sun Dec 18 14:34:31 2011  Nobuyoshi Nakada  <nobu at ruby-lang.org>
+ 
+ 	* ext/bigdecimal/bigdecimal.c (Init_bigdecimal): does not follow
+diff --git a/vm.c b/vm.c
+index e04a44b..67ca439 100644
+--- a/vm.c
++++ b/vm.c
+@@ -1912,8 +1912,7 @@ vm_define_method(rb_thread_t *th, VALUE obj, ID id, VALUE iseqval,
+     GetISeqPtr(iseqval, miseq);
+ 
+     if (miseq->klass) {
+-	iseqval = rb_iseq_clone(iseqval, 0);
+-	RB_GC_GUARD(iseqval);
++	RB_GC_GUARD(iseqval) = rb_iseq_clone(iseqval, 0);
+ 	GetISeqPtr(iseqval, miseq);
+     }
+ 
+-- 
+1.7.5.4
+

This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.



More information about the devel mailing list