Date: Monday, December 28, 2015 @ 22:50:39
  Author: foutrelis
Revision: 154715

archrelease: copy trunk to community-staging-i686, community-staging-x86_64

Added:
  clearsilver/repos/community-staging-i686/
  clearsilver/repos/community-staging-i686/PKGBUILD
    (from rev 154714, clearsilver/trunk/PKGBUILD)
  clearsilver/repos/community-staging-i686/c99.patch
    (from rev 154714, clearsilver/trunk/c99.patch)
  clearsilver/repos/community-staging-i686/clearsilver-ruby-1.9.patch
    (from rev 154714, clearsilver/trunk/clearsilver-ruby-1.9.patch)
  clearsilver/repos/community-staging-x86_64/
  clearsilver/repos/community-staging-x86_64/PKGBUILD
    (from rev 154714, clearsilver/trunk/PKGBUILD)
  clearsilver/repos/community-staging-x86_64/c99.patch
    (from rev 154714, clearsilver/trunk/c99.patch)
  clearsilver/repos/community-staging-x86_64/clearsilver-ruby-1.9.patch
    (from rev 154714, clearsilver/trunk/clearsilver-ruby-1.9.patch)

-----------------------------------------------------+
 community-staging-i686/PKGBUILD                     |   79 +++++
 community-staging-i686/c99.patch                    |   23 +
 community-staging-i686/clearsilver-ruby-1.9.patch   |  244 ++++++++++++++++++
 community-staging-x86_64/PKGBUILD                   |   79 +++++
 community-staging-x86_64/c99.patch                  |   23 +
 community-staging-x86_64/clearsilver-ruby-1.9.patch |  244 ++++++++++++++++++
 6 files changed, 692 insertions(+)

Copied: clearsilver/repos/community-staging-i686/PKGBUILD (from rev 154714, 
clearsilver/trunk/PKGBUILD)
===================================================================
--- community-staging-i686/PKGBUILD                             (rev 0)
+++ community-staging-i686/PKGBUILD     2015-12-28 21:50:39 UTC (rev 154715)
@@ -0,0 +1,79 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+a...@gmail.com>
+# Maintainer : Aaron Griffin <aa...@archlinux.org>
+# Contributor: William Rea <sillywi...@gmail.com>
+
+pkgname=clearsilver
+pkgver=0.10.5
+pkgrel=19
+pkgdesc="clearsilver is a fast, powerful, and language-neutral HTML template 
system"
+arch=('i686' 'x86_64')
+url='http://www.clearsilver.net'
+license=('custom')
+depends=('python2' 'perl' 'ruby' 'java-runtime')
+makedepends=('java-environment')
+options=('!emptydirs' 'staticlibs')
+source=("http://www.clearsilver.net/downloads/$pkgname-$pkgver.tar.gz";
+        "clearsilver-ruby-1.9.patch"
+        "c99.patch")
+md5sums=('b8c0c7fbe0ef5e06e0c935f134304d44'
+         'd9db4e5985254e1b0d63e9ff042773f4'
+         '18b9bf6755786f202b25477b5e882792')
+
+prepare() {
+  cd $srcdir/$pkgname-$pkgver
+  sed -i "s@/usr/local/bin/python@/usr/bin/env python2@g" scripts/document.py
+  sed -i "s...@install.rb inst...@install.rb install --prefix=$pkgdir@g" 
ruby/Makefile
+  patch -p1 <$srcdir/clearsilver-ruby-1.9.patch
+  patch -p1 <$srcdir/c99.patch
+  patch -p0 ruby/install.rb <<EOF
+71,73c71,73
+<     siteruby   = subprefix.call(c['sitedir'])
+<     versite    = subprefix.call(c['sitelibdir'])
+<     sodir      = subprefix.call(c['sitearchdir'])
+---
+>     siteruby   = subprefix.call(c['vendordir'])
+>     versite    = subprefix.call(c['vendorlibdir'])
+>     sodir      = subprefix.call(c['vendorarchdir'])
+EOF
+  sed -i 's|LIBRARIES = inserted + LIBRARIES|LIBRARIES = LIBRARIES + 
inserted|' python/setup.py
+
+  # fix for ruby 2.2
+  sed -i 's|::Config::|RbConfig::|g' ruby/install.rb
+  if [ $CARCH == "x86_64" ]; then
+    sed -i 's|-2128917020|2166050276|' cs/test_crc.cs.gold
+  fi
+}
+
+build() {
+  cd $srcdir/$pkgname-$pkgver
+  export PERL_MM_OPT='INSTALLDIRS=vendor'
+  ./configure --disable-csharp --prefix=/usr --with-python=/usr/bin/python2
+  make
+}
+
+check() {
+  cd $srcdir/$pkgname-$pkgver
+  (cd ruby && make testrb)
+  (cd perl && make test)
+}
+
+package() {
+  cd $srcdir/$pkgname-$pkgver
+  make PREFIX=$pkgdir DESTDIR=$pkgdir install
+
+  install -Dm644 CS_LICENSE $pkgdir/usr/share/licenses/clearsilver/license.txt
+  mv $pkgdir/usr/man/man3/* $pkgdir/usr/share/man/man3/
+  rm -rf $pkgdir/usr/man
+
+  find $pkgdir -name '.packlist' -delete
+  find $pkgdir -name '*.pod' -delete
+
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+       _perlver_min=$(perl -e '$v = $^V->{version}; print 
$v->[0].".".($v->[1]);')
+       _perlver_max=$(perl -e '$v = $^V->{version}; print 
$v->[0].".".($v->[1]+1);')
+       depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
+}

Copied: clearsilver/repos/community-staging-i686/c99.patch (from rev 154714, 
clearsilver/trunk/c99.patch)
===================================================================
--- community-staging-i686/c99.patch                            (rev 0)
+++ community-staging-i686/c99.patch    2015-12-28 21:50:39 UTC (rev 154715)
@@ -0,0 +1,23 @@
+diff -wbBur clearsilver-0.10.5/util/neo_err.h 
clearsilver-0.10.5.my/util/neo_err.h
+--- clearsilver-0.10.5/util/neo_err.h  2007-07-12 07:09:09.000000000 +0400
++++ clearsilver-0.10.5.my/util/neo_err.h       2015-06-05 19:06:34.961297962 
+0300
+@@ -84,9 +84,6 @@
+  *          NEOERR fails
+  */
+ #if defined(USE_C99_VARARG_MACROS)
+-#define nerr_raise(e,f,...) \
+-   nerr_raisef(__PRETTY_FUNCTION__,__FILE__,__LINE__,e,f,__VA_ARGS__)
+-#elif defined(USE_GNUC_VARARG_MACROS)
+ #define nerr_raise(e,f,a...) \
+    nerr_raisef(__PRETTY_FUNCTION__,__FILE__,__LINE__,e,f,##a)
+ #endif
+@@ -98,9 +95,6 @@
+ 
+ 
+ #if defined(USE_C99_VARARG_MACROS)
+-#define nerr_raise_errno(e,f,...) \
+-   nerr_raise_errnof(__PRETTY_FUNCTION__,__FILE__,__LINE__,e,f,__VA_ARGS__)
+-#elif defined(USE_GNUC_VARARG_MACROS)
+ #define nerr_raise_errno(e,f,a...) \
+    nerr_raise_errnof(__PRETTY_FUNCTION__,__FILE__,__LINE__,e,f,##a)
+ #endif

Copied: clearsilver/repos/community-staging-i686/clearsilver-ruby-1.9.patch 
(from rev 154714, clearsilver/trunk/clearsilver-ruby-1.9.patch)
===================================================================
--- community-staging-i686/clearsilver-ruby-1.9.patch                           
(rev 0)
+++ community-staging-i686/clearsilver-ruby-1.9.patch   2015-12-28 21:50:39 UTC 
(rev 154715)
@@ -0,0 +1,244 @@
+diff -u -Nr clearsilver-0.10.5/ruby/ext/hdf/neo_cs.c 
clearsilver-0.10.5.my/ruby/ext/hdf/neo_cs.c
+--- clearsilver-0.10.5/ruby/ext/hdf/neo_cs.c   2007-02-16 01:31:39.000000000 
+0100
++++ clearsilver-0.10.5.my/ruby/ext/hdf/neo_cs.c        2010-09-18 
18:20:40.088619662 +0200
+@@ -19,7 +19,7 @@
+ 
+ VALUE r_neo_error(NEOERR *err);
+ 
+-#define Srb_raise(val) rb_raise(eHdfError, "%s/%d 
%s",__FILE__,__LINE__,RSTRING(val)->ptr)
++#define Srb_raise(val) rb_raise(eHdfError, "%s/%d 
%s",__FILE__,__LINE__,RARRAY_PTR(RSTRING(val)))
+ 
+ static void c_free (CSPARSE *csd) {
+   if (csd) {
+@@ -57,7 +57,7 @@
+   char *path;
+ 
+   Data_Get_Struct(self, CSPARSE, cs);
+-  path = STR2CSTR(oPath);
++  path = StringValuePtr(oPath);
+ 
+   err = cs_parse_file (cs, path);
+   if (err) Srb_raise(r_neo_error(err));
+@@ -73,7 +73,8 @@
+   long l;
+ 
+   Data_Get_Struct(self, CSPARSE, cs);
+-  s = rb_str2cstr(oString, &l);
++  s = StringValuePtr(oString);
++  l = RSTRING_LEN(oString);
+ 
+   /* This should be changed to use memory from the gc */
+   ms = strdup(s);
+diff -u -Nr clearsilver-0.10.5/ruby/ext/hdf/neo_util.c 
clearsilver-0.10.5.my/ruby/ext/hdf/neo_util.c
+--- clearsilver-0.10.5/ruby/ext/hdf/neo_util.c 2007-02-16 01:32:03.000000000 
+0100
++++ clearsilver-0.10.5.my/ruby/ext/hdf/neo_util.c      2010-09-18 
18:24:05.928058973 +0200
+@@ -10,7 +10,7 @@
+  */
+ 
+ #include <ruby.h>
+-#include <version.h>
++//#include <version.h>
+ #include "ClearSilver.h"
+ #include "neo_ruby.h"
+ 
+@@ -19,7 +19,7 @@
+ VALUE eHdfError;
+ static ID id_to_s;
+ 
+-#define Srb_raise(val) rb_raise(eHdfError, "%s/%d 
%s",__FILE__,__LINE__,RSTRING(val)->ptr)
++#define Srb_raise(val) rb_raise(eHdfError, "%s/%d 
%s",__FILE__,__LINE__,RARRAY_PTR(RSTRING(val)))
+ 
+ VALUE r_neo_error (NEOERR *err)
+ {
+@@ -96,7 +96,7 @@
+   VALUE rv;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+-  name = STR2CSTR(oName);
++  name = StringValuePtr(oName);
+ 
+   rv = rb_hash_new();
+ 
+@@ -118,12 +118,12 @@
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+ 
+-  name = STR2CSTR(oName);
+-  key = STR2CSTR(oKey);
++  name = StringValuePtr(oName);
++  key = StringValuePtr(oKey);
+   if ( NIL_P(oValue) )
+     value = NULL;
+   else
+-    value = STR2CSTR(oValue);
++    value = StringValuePtr(oValue);
+ 
+   err = hdf_set_attr(hdfh->hdf, name, key, value);
+   if (err) Srb_raise(r_neo_error(err));
+@@ -134,22 +134,22 @@
+ static VALUE h_set_value (VALUE self, VALUE oName, VALUE oValue)
+ {
+   t_hdfh *hdfh;
+-  char *name, *value;
++  VALUE name, value;
+   NEOERR *err;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+ 
+   if ( TYPE(oName) == T_STRING )
+-    name=STR2CSTR(oName);
++    name=oName;
+   else
+-    name=STR2CSTR(rb_funcall(oName,id_to_s,0));
++    name=rb_funcall(oName,id_to_s,0);
+ 
+   if ( TYPE(oValue) == T_STRING )
+-    value=STR2CSTR(oValue);
++    value=oValue;
+   else
+-    value=STR2CSTR(rb_funcall(oValue,id_to_s,0));
++    value=rb_funcall(oValue,id_to_s,0);
+ 
+-  err = hdf_set_value (hdfh->hdf, name, value);
++  err = hdf_set_value (hdfh->hdf, StringValuePtr(name), 
StringValuePtr(value));
+ 
+   if (err) Srb_raise(r_neo_error(err));
+ 
+@@ -165,7 +165,7 @@
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+ 
+-  name=STR2CSTR(oName);
++  name=StringValuePtr(oName);
+   d=NUM2INT(oDefault);
+ 
+   r = hdf_get_int_value (hdfh->hdf, name, d);
+@@ -181,8 +181,8 @@
+   VALUE rv;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+-  name=STR2CSTR(oName);
+-  d=STR2CSTR(oDefault);
++  name=StringValuePtr(oName);
++  d=StringValuePtr(oDefault);
+ 
+   r = hdf_get_value (hdfh->hdf, name, d);
+   rv = rb_str_new2(r);
+@@ -197,7 +197,7 @@
+   char *name;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+-  name=STR2CSTR(oName);
++  name=StringValuePtr(oName);
+ 
+   r = hdf_get_child (hdfh->hdf, name);
+   if (r == NULL) {
+@@ -219,7 +219,7 @@
+   char *name;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+-  name=STR2CSTR(oName);
++  name=StringValuePtr(oName);
+ 
+   r = hdf_get_obj (hdfh->hdf, name);
+   if (r == NULL) {
+@@ -243,7 +243,7 @@
+   NEOERR *err;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+-  name=STR2CSTR(oName);
++  name=StringValuePtr(oName);
+ 
+   err = hdf_get_node (hdfh->hdf, name, &r);
+   if (err)
+@@ -384,7 +384,7 @@
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+ 
+-  path=STR2CSTR(oPath);
++  path=StringValuePtr(oPath);
+ 
+   err = hdf_read_file (hdfh->hdf, path);
+   if (err) Srb_raise(r_neo_error(err));
+@@ -400,7 +400,7 @@
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+ 
+-  path=STR2CSTR(oPath);
++  path=StringValuePtr(oPath);
+ 
+   err = hdf_write_file (hdfh->hdf, path);
+ 
+@@ -417,7 +417,7 @@
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+ 
+-  path=STR2CSTR(oPath);
++  path=StringValuePtr(oPath);
+ 
+   err = hdf_write_file_atomic (hdfh->hdf, path);
+   if (err) Srb_raise(r_neo_error(err));
+@@ -432,7 +432,7 @@
+   NEOERR *err;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+-  name = STR2CSTR(oName);
++  name = StringValuePtr(oName);
+ 
+   err = hdf_remove_tree (hdfh->hdf, name);
+   if (err) Srb_raise(r_neo_error(err));
+@@ -489,7 +489,7 @@
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+ 
+-  s = STR2CSTR(oString);
++  s = StringValuePtr(oString);
+   ignore = NUM2INT(oIgnore);
+ 
+   err = hdf_read_string_ignore (hdfh->hdf, s, ignore);
+@@ -508,7 +508,7 @@
+   Data_Get_Struct(self, t_hdfh, hdfh);
+   Data_Get_Struct(oHdfSrc, t_hdfh, hdfh_src);
+ 
+-  name = STR2CSTR(oName);
++  name = StringValuePtr(oName);
+ 
+   if (hdfh_src == NULL) rb_raise(eHdfError, "second argument must be an Hdf 
object");
+ 
+@@ -526,8 +526,8 @@
+   NEOERR *err;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+-  src = STR2CSTR(oSrc);
+-  dest = STR2CSTR(oDest);
++  src = StringValuePtr(oSrc);
++  dest = StringValuePtr(oDest);
+ 
+   err = hdf_set_symlink (hdfh->hdf, src, dest);
+   if (err) Srb_raise(r_neo_error(err));
+@@ -545,9 +545,10 @@
+   char *ret = NULL;
+   NEOERR *err;
+ 
+-  s = rb_str2cstr(oString,&buflen);
+-  esc_char = STR2CSTR(oEsc_char);
+-  escape = STR2CSTR(oEsc);
++  s = StringValuePtr(oString);
++  buflen = RSTRING_LEN(oString);
++  esc_char = StringValuePtr(oEsc_char);
++  escape = StringValuePtr(oEsc);
+ 
+   err = neos_escape((UINT8*)s, buflen, esc_char[0], escape, &ret);
+ 
+@@ -566,8 +567,9 @@
+   char *esc_char;
+   long buflen;
+ 
+-  s = rb_str2cstr(oString,&buflen);
+-  esc_char = STR2CSTR(oEsc_char);
++  s = StringValuePtr(oString);
++  buflen = RSTRING_LEN(oString);
++  esc_char = StringValuePtr(oEsc_char);
+ 
+   /* This should be changed to use memory from the gc */
+   copy = strdup(s);

Copied: clearsilver/repos/community-staging-x86_64/PKGBUILD (from rev 154714, 
clearsilver/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD                           (rev 0)
+++ community-staging-x86_64/PKGBUILD   2015-12-28 21:50:39 UTC (rev 154715)
@@ -0,0 +1,79 @@
+# $Id$
+# Maintainer: Sergej Pupykin <pupykin.s+a...@gmail.com>
+# Maintainer : Aaron Griffin <aa...@archlinux.org>
+# Contributor: William Rea <sillywi...@gmail.com>
+
+pkgname=clearsilver
+pkgver=0.10.5
+pkgrel=19
+pkgdesc="clearsilver is a fast, powerful, and language-neutral HTML template 
system"
+arch=('i686' 'x86_64')
+url='http://www.clearsilver.net'
+license=('custom')
+depends=('python2' 'perl' 'ruby' 'java-runtime')
+makedepends=('java-environment')
+options=('!emptydirs' 'staticlibs')
+source=("http://www.clearsilver.net/downloads/$pkgname-$pkgver.tar.gz";
+        "clearsilver-ruby-1.9.patch"
+        "c99.patch")
+md5sums=('b8c0c7fbe0ef5e06e0c935f134304d44'
+         'd9db4e5985254e1b0d63e9ff042773f4'
+         '18b9bf6755786f202b25477b5e882792')
+
+prepare() {
+  cd $srcdir/$pkgname-$pkgver
+  sed -i "s@/usr/local/bin/python@/usr/bin/env python2@g" scripts/document.py
+  sed -i "s...@install.rb inst...@install.rb install --prefix=$pkgdir@g" 
ruby/Makefile
+  patch -p1 <$srcdir/clearsilver-ruby-1.9.patch
+  patch -p1 <$srcdir/c99.patch
+  patch -p0 ruby/install.rb <<EOF
+71,73c71,73
+<     siteruby   = subprefix.call(c['sitedir'])
+<     versite    = subprefix.call(c['sitelibdir'])
+<     sodir      = subprefix.call(c['sitearchdir'])
+---
+>     siteruby   = subprefix.call(c['vendordir'])
+>     versite    = subprefix.call(c['vendorlibdir'])
+>     sodir      = subprefix.call(c['vendorarchdir'])
+EOF
+  sed -i 's|LIBRARIES = inserted + LIBRARIES|LIBRARIES = LIBRARIES + 
inserted|' python/setup.py
+
+  # fix for ruby 2.2
+  sed -i 's|::Config::|RbConfig::|g' ruby/install.rb
+  if [ $CARCH == "x86_64" ]; then
+    sed -i 's|-2128917020|2166050276|' cs/test_crc.cs.gold
+  fi
+}
+
+build() {
+  cd $srcdir/$pkgname-$pkgver
+  export PERL_MM_OPT='INSTALLDIRS=vendor'
+  ./configure --disable-csharp --prefix=/usr --with-python=/usr/bin/python2
+  make
+}
+
+check() {
+  cd $srcdir/$pkgname-$pkgver
+  (cd ruby && make testrb)
+  (cd perl && make test)
+}
+
+package() {
+  cd $srcdir/$pkgname-$pkgver
+  make PREFIX=$pkgdir DESTDIR=$pkgdir install
+
+  install -Dm644 CS_LICENSE $pkgdir/usr/share/licenses/clearsilver/license.txt
+  mv $pkgdir/usr/man/man3/* $pkgdir/usr/share/man/man3/
+  rm -rf $pkgdir/usr/man
+
+  find $pkgdir -name '.packlist' -delete
+  find $pkgdir -name '*.pod' -delete
+
+# template start; name=perl-binary-module-dependency; version=1;
+if [[ $(find "$pkgdir/usr/lib/perl5/" -name "*.so") ]]; then
+       _perlver_min=$(perl -e '$v = $^V->{version}; print 
$v->[0].".".($v->[1]);')
+       _perlver_max=$(perl -e '$v = $^V->{version}; print 
$v->[0].".".($v->[1]+1);')
+       depends+=("perl>=$_perlver_min" "perl<$_perlver_max")
+fi
+# template end;
+}

Copied: clearsilver/repos/community-staging-x86_64/c99.patch (from rev 154714, 
clearsilver/trunk/c99.patch)
===================================================================
--- community-staging-x86_64/c99.patch                          (rev 0)
+++ community-staging-x86_64/c99.patch  2015-12-28 21:50:39 UTC (rev 154715)
@@ -0,0 +1,23 @@
+diff -wbBur clearsilver-0.10.5/util/neo_err.h 
clearsilver-0.10.5.my/util/neo_err.h
+--- clearsilver-0.10.5/util/neo_err.h  2007-07-12 07:09:09.000000000 +0400
++++ clearsilver-0.10.5.my/util/neo_err.h       2015-06-05 19:06:34.961297962 
+0300
+@@ -84,9 +84,6 @@
+  *          NEOERR fails
+  */
+ #if defined(USE_C99_VARARG_MACROS)
+-#define nerr_raise(e,f,...) \
+-   nerr_raisef(__PRETTY_FUNCTION__,__FILE__,__LINE__,e,f,__VA_ARGS__)
+-#elif defined(USE_GNUC_VARARG_MACROS)
+ #define nerr_raise(e,f,a...) \
+    nerr_raisef(__PRETTY_FUNCTION__,__FILE__,__LINE__,e,f,##a)
+ #endif
+@@ -98,9 +95,6 @@
+ 
+ 
+ #if defined(USE_C99_VARARG_MACROS)
+-#define nerr_raise_errno(e,f,...) \
+-   nerr_raise_errnof(__PRETTY_FUNCTION__,__FILE__,__LINE__,e,f,__VA_ARGS__)
+-#elif defined(USE_GNUC_VARARG_MACROS)
+ #define nerr_raise_errno(e,f,a...) \
+    nerr_raise_errnof(__PRETTY_FUNCTION__,__FILE__,__LINE__,e,f,##a)
+ #endif

Copied: clearsilver/repos/community-staging-x86_64/clearsilver-ruby-1.9.patch 
(from rev 154714, clearsilver/trunk/clearsilver-ruby-1.9.patch)
===================================================================
--- community-staging-x86_64/clearsilver-ruby-1.9.patch                         
(rev 0)
+++ community-staging-x86_64/clearsilver-ruby-1.9.patch 2015-12-28 21:50:39 UTC 
(rev 154715)
@@ -0,0 +1,244 @@
+diff -u -Nr clearsilver-0.10.5/ruby/ext/hdf/neo_cs.c 
clearsilver-0.10.5.my/ruby/ext/hdf/neo_cs.c
+--- clearsilver-0.10.5/ruby/ext/hdf/neo_cs.c   2007-02-16 01:31:39.000000000 
+0100
++++ clearsilver-0.10.5.my/ruby/ext/hdf/neo_cs.c        2010-09-18 
18:20:40.088619662 +0200
+@@ -19,7 +19,7 @@
+ 
+ VALUE r_neo_error(NEOERR *err);
+ 
+-#define Srb_raise(val) rb_raise(eHdfError, "%s/%d 
%s",__FILE__,__LINE__,RSTRING(val)->ptr)
++#define Srb_raise(val) rb_raise(eHdfError, "%s/%d 
%s",__FILE__,__LINE__,RARRAY_PTR(RSTRING(val)))
+ 
+ static void c_free (CSPARSE *csd) {
+   if (csd) {
+@@ -57,7 +57,7 @@
+   char *path;
+ 
+   Data_Get_Struct(self, CSPARSE, cs);
+-  path = STR2CSTR(oPath);
++  path = StringValuePtr(oPath);
+ 
+   err = cs_parse_file (cs, path);
+   if (err) Srb_raise(r_neo_error(err));
+@@ -73,7 +73,8 @@
+   long l;
+ 
+   Data_Get_Struct(self, CSPARSE, cs);
+-  s = rb_str2cstr(oString, &l);
++  s = StringValuePtr(oString);
++  l = RSTRING_LEN(oString);
+ 
+   /* This should be changed to use memory from the gc */
+   ms = strdup(s);
+diff -u -Nr clearsilver-0.10.5/ruby/ext/hdf/neo_util.c 
clearsilver-0.10.5.my/ruby/ext/hdf/neo_util.c
+--- clearsilver-0.10.5/ruby/ext/hdf/neo_util.c 2007-02-16 01:32:03.000000000 
+0100
++++ clearsilver-0.10.5.my/ruby/ext/hdf/neo_util.c      2010-09-18 
18:24:05.928058973 +0200
+@@ -10,7 +10,7 @@
+  */
+ 
+ #include <ruby.h>
+-#include <version.h>
++//#include <version.h>
+ #include "ClearSilver.h"
+ #include "neo_ruby.h"
+ 
+@@ -19,7 +19,7 @@
+ VALUE eHdfError;
+ static ID id_to_s;
+ 
+-#define Srb_raise(val) rb_raise(eHdfError, "%s/%d 
%s",__FILE__,__LINE__,RSTRING(val)->ptr)
++#define Srb_raise(val) rb_raise(eHdfError, "%s/%d 
%s",__FILE__,__LINE__,RARRAY_PTR(RSTRING(val)))
+ 
+ VALUE r_neo_error (NEOERR *err)
+ {
+@@ -96,7 +96,7 @@
+   VALUE rv;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+-  name = STR2CSTR(oName);
++  name = StringValuePtr(oName);
+ 
+   rv = rb_hash_new();
+ 
+@@ -118,12 +118,12 @@
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+ 
+-  name = STR2CSTR(oName);
+-  key = STR2CSTR(oKey);
++  name = StringValuePtr(oName);
++  key = StringValuePtr(oKey);
+   if ( NIL_P(oValue) )
+     value = NULL;
+   else
+-    value = STR2CSTR(oValue);
++    value = StringValuePtr(oValue);
+ 
+   err = hdf_set_attr(hdfh->hdf, name, key, value);
+   if (err) Srb_raise(r_neo_error(err));
+@@ -134,22 +134,22 @@
+ static VALUE h_set_value (VALUE self, VALUE oName, VALUE oValue)
+ {
+   t_hdfh *hdfh;
+-  char *name, *value;
++  VALUE name, value;
+   NEOERR *err;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+ 
+   if ( TYPE(oName) == T_STRING )
+-    name=STR2CSTR(oName);
++    name=oName;
+   else
+-    name=STR2CSTR(rb_funcall(oName,id_to_s,0));
++    name=rb_funcall(oName,id_to_s,0);
+ 
+   if ( TYPE(oValue) == T_STRING )
+-    value=STR2CSTR(oValue);
++    value=oValue;
+   else
+-    value=STR2CSTR(rb_funcall(oValue,id_to_s,0));
++    value=rb_funcall(oValue,id_to_s,0);
+ 
+-  err = hdf_set_value (hdfh->hdf, name, value);
++  err = hdf_set_value (hdfh->hdf, StringValuePtr(name), 
StringValuePtr(value));
+ 
+   if (err) Srb_raise(r_neo_error(err));
+ 
+@@ -165,7 +165,7 @@
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+ 
+-  name=STR2CSTR(oName);
++  name=StringValuePtr(oName);
+   d=NUM2INT(oDefault);
+ 
+   r = hdf_get_int_value (hdfh->hdf, name, d);
+@@ -181,8 +181,8 @@
+   VALUE rv;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+-  name=STR2CSTR(oName);
+-  d=STR2CSTR(oDefault);
++  name=StringValuePtr(oName);
++  d=StringValuePtr(oDefault);
+ 
+   r = hdf_get_value (hdfh->hdf, name, d);
+   rv = rb_str_new2(r);
+@@ -197,7 +197,7 @@
+   char *name;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+-  name=STR2CSTR(oName);
++  name=StringValuePtr(oName);
+ 
+   r = hdf_get_child (hdfh->hdf, name);
+   if (r == NULL) {
+@@ -219,7 +219,7 @@
+   char *name;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+-  name=STR2CSTR(oName);
++  name=StringValuePtr(oName);
+ 
+   r = hdf_get_obj (hdfh->hdf, name);
+   if (r == NULL) {
+@@ -243,7 +243,7 @@
+   NEOERR *err;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+-  name=STR2CSTR(oName);
++  name=StringValuePtr(oName);
+ 
+   err = hdf_get_node (hdfh->hdf, name, &r);
+   if (err)
+@@ -384,7 +384,7 @@
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+ 
+-  path=STR2CSTR(oPath);
++  path=StringValuePtr(oPath);
+ 
+   err = hdf_read_file (hdfh->hdf, path);
+   if (err) Srb_raise(r_neo_error(err));
+@@ -400,7 +400,7 @@
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+ 
+-  path=STR2CSTR(oPath);
++  path=StringValuePtr(oPath);
+ 
+   err = hdf_write_file (hdfh->hdf, path);
+ 
+@@ -417,7 +417,7 @@
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+ 
+-  path=STR2CSTR(oPath);
++  path=StringValuePtr(oPath);
+ 
+   err = hdf_write_file_atomic (hdfh->hdf, path);
+   if (err) Srb_raise(r_neo_error(err));
+@@ -432,7 +432,7 @@
+   NEOERR *err;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+-  name = STR2CSTR(oName);
++  name = StringValuePtr(oName);
+ 
+   err = hdf_remove_tree (hdfh->hdf, name);
+   if (err) Srb_raise(r_neo_error(err));
+@@ -489,7 +489,7 @@
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+ 
+-  s = STR2CSTR(oString);
++  s = StringValuePtr(oString);
+   ignore = NUM2INT(oIgnore);
+ 
+   err = hdf_read_string_ignore (hdfh->hdf, s, ignore);
+@@ -508,7 +508,7 @@
+   Data_Get_Struct(self, t_hdfh, hdfh);
+   Data_Get_Struct(oHdfSrc, t_hdfh, hdfh_src);
+ 
+-  name = STR2CSTR(oName);
++  name = StringValuePtr(oName);
+ 
+   if (hdfh_src == NULL) rb_raise(eHdfError, "second argument must be an Hdf 
object");
+ 
+@@ -526,8 +526,8 @@
+   NEOERR *err;
+ 
+   Data_Get_Struct(self, t_hdfh, hdfh);
+-  src = STR2CSTR(oSrc);
+-  dest = STR2CSTR(oDest);
++  src = StringValuePtr(oSrc);
++  dest = StringValuePtr(oDest);
+ 
+   err = hdf_set_symlink (hdfh->hdf, src, dest);
+   if (err) Srb_raise(r_neo_error(err));
+@@ -545,9 +545,10 @@
+   char *ret = NULL;
+   NEOERR *err;
+ 
+-  s = rb_str2cstr(oString,&buflen);
+-  esc_char = STR2CSTR(oEsc_char);
+-  escape = STR2CSTR(oEsc);
++  s = StringValuePtr(oString);
++  buflen = RSTRING_LEN(oString);
++  esc_char = StringValuePtr(oEsc_char);
++  escape = StringValuePtr(oEsc);
+ 
+   err = neos_escape((UINT8*)s, buflen, esc_char[0], escape, &ret);
+ 
+@@ -566,8 +567,9 @@
+   char *esc_char;
+   long buflen;
+ 
+-  s = rb_str2cstr(oString,&buflen);
+-  esc_char = STR2CSTR(oEsc_char);
++  s = StringValuePtr(oString);
++  buflen = RSTRING_LEN(oString);
++  esc_char = StringValuePtr(oEsc_char);
+ 
+   /* This should be changed to use memory from the gc */
+   copy = strdup(s);

Reply via email to