Add a patch for Ruby's GC processing: [ruby-dev:40823].

Bump PKGREVISION.
This commit is contained in:
taca 2010-04-12 13:57:59 +00:00
parent c3490c5071
commit ccc66f408b
3 changed files with 21 additions and 2 deletions

View file

@ -1,6 +1,7 @@
# $NetBSD: Makefile,v 1.28 2010/02/04 16:10:47 taca Exp $
# $NetBSD: Makefile,v 1.29 2010/04/12 13:57:59 taca Exp $
DISTNAME= swig-1.3.36
PKGREVISION= 1
CATEGORIES= devel
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=swig/}

View file

@ -1,7 +1,8 @@
$NetBSD: distinfo,v 1.10 2010/02/04 15:39:39 taca Exp $
$NetBSD: distinfo,v 1.11 2010/04/12 13:57:59 taca Exp $
SHA1 (swig-1.3.36.tar.gz) = eed715da3200f45cfe688a64ab6630eadf118ae4
RMD160 (swig-1.3.36.tar.gz) = bd57f6837de1dc3aebefd9ad23a52235deefcd33
Size (swig-1.3.36.tar.gz) = 4604982 bytes
SHA1 (patch-aa) = 66374c0708cfda23810bd5744e0c4bb0abc605f5
SHA1 (patch-ab) = c690480ad10256c7198fc19699557e0b3f46b087
SHA1 (patch-ad) = f5787be95bb896cdba0f42587c4f586caed9b7a2

View file

@ -0,0 +1,17 @@
$NetBSD: patch-ad,v 1.1 2010/04/12 13:57:59 taca Exp $
* Fix GC mark processing: [ruby-dev:40823]
--- Lib/ruby/rubycontainer.swg.orig 2008-06-21 20:45:32.000000000 +0000
+++ Lib/ruby/rubycontainer.swg
@@ -1112,9 +1112,8 @@ namespace swig {
int i = 0;
for (const_iterator it = seq.begin();
it != seq.end(); ++it, ++i) {
- RARRAY_PTR(obj)[i] = swig::from< value_type >(*it);
+ rb_ary_push(obj, swig::from< value_type >(*it));
}
- RARRAY_LEN(obj) = size;
rb_obj_freeze(obj); // treat as immutable result
return obj;
} else {