[SCM] ruby-hdfeos5 branch, master, updated. upstream/1.0-5-g7119aa9

Youhei SASAKI uwabami at gfd-dennou.org
Tue Feb 22 07:11:27 UTC 2011


The following commit has been merged in the master branch:
commit 275420bb411bc76bb4f62b071b7c68e4002f05bd
Author: Youhei SASAKI <uwabami at gfd-dennou.org>
Date:   Sat Jan 1 23:37:00 2011 +0900

    rename patch
    
    * sync CVS HEAD (minor bugfix)
    * rename patch

diff --git a/debian/patches/CVSupdate b/debian/patches/0001-Ruby-1.9-compatibility.patch
similarity index 81%
rename from debian/patches/CVSupdate
rename to debian/patches/0001-Ruby-1.9-compatibility.patch
index 0a2f9fa..fb6435c 100644
--- a/debian/patches/CVSupdate
+++ b/debian/patches/0001-Ruby-1.9-compatibility.patch
@@ -1,135 +1,22 @@
-diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' ruby-hdfeos5~/ChangeLog ruby-hdfeos5/ChangeLog
---- ruby-hdfeos5~/ChangeLog	2010-12-13 19:22:54.000000000 +0900
-+++ ruby-hdfeos5/ChangeLog	2010-12-13 19:23:11.000000000 +0900
-@@ -6,18 +6,47 @@
-  This script is available from  http://www.red-bean.com/cvs2cl/
- 
- 
-+2010-04-05 Monday 15:55  koshiro
-+
-+	* hdfeos5_chkdatatype.c (1.4), hdfeos5_obj2cary.c (1.4),
-+	  hdfeos5gd_wrap.c (1.5), hdfeos5main_wrap.c (1.3),
-+	  hdfeos5pt_wrap.c (1.3), hdfeos5sw_wrap.c (1.12), hdfeos5za_wrap.c
-+	  (1.6):
-+
-+	  * Ruby 1.9 compatibility
-+
-+2010-04-05 Monday 15:28  koshiro
-+
-+	* extconf.rb (1.2):
-+
-+	  * extconf.rb: bug fix.
-+
-+2009-07-03 Friday 19:42  horikawa
-+
-+	* lib/hdfeos5.rb (1.21, ruby-hdfeos5-1_0):
-+	   bugfix
-+
-+2009-04-24 Friday 16:20  horikawa
-+
-+	* ChangeLog (1.8, ruby-hdfeos5-1_0), hdfeos5za_wrap.c (1.5,
-+	  ruby-hdfeos5-1_0), lib/hdfeos5.rb (1.20), test/test_za.rb (1.3,
-+	  ruby-hdfeos5-1_0): changed  info() to  fieldinfo()
-+
- 2009-04-22 Wednesday 13:54  horikawa
- 
--	* ChangeLog (1.7), hdfeos5pt_wrap.c (1.2), test/test_pt.rb (1.2):
--	  supported linkage point (point wrapper)
-+	* ChangeLog (1.7), hdfeos5pt_wrap.c (1.2, ruby-hdfeos5-1_0),
-+	  test/test_pt.rb (1.2, ruby-hdfeos5-1_0): supported linkage point
-+	  (point wrapper)
- 
- 2009-04-20 Monday 13:11  horikawa
- 
--	* ChangeLog (1.6), hdfeos5_chkdatatype.c (1.3), hdfeos5_obj2cary.c
--	  (1.3), hdfeos5gd_wrap.c (1.4), hdfeos5main_wrap.c (1.2),
--	  hdfeos5pt_wrap.c (1.1), hdfeos5sw_wrap.c (1.11), hdfeos5za_wrap.c
--	  (1.4), lib/hdfeos5.rb (1.19), test/test_gd.rb (1.2),
--	  test/test_pt.rb (1.1), test/test_sw.rb (1.2), test/test_za.rb
-+	* ChangeLog (1.6), hdfeos5_chkdatatype.c (1.3, ruby-hdfeos5-1_0),
-+	  hdfeos5_obj2cary.c (1.3, ruby-hdfeos5-1_0), hdfeos5gd_wrap.c
-+	  (1.4, ruby-hdfeos5-1_0), hdfeos5main_wrap.c (1.2,
-+	  ruby-hdfeos5-1_0), hdfeos5pt_wrap.c (1.1), hdfeos5sw_wrap.c
-+	  (1.11, ruby-hdfeos5-1_0), hdfeos5za_wrap.c (1.4), lib/hdfeos5.rb
-+	  (1.19), test/test_gd.rb (1.2, ruby-hdfeos5-1_0), test/test_pt.rb
-+	  (1.1), test/test_sw.rb (1.2, ruby-hdfeos5-1_0), test/test_za.rb
- 	  (1.2): modified simple_put and put_with_miss modified the
- 	  readfield function ( swath / grid / zonal ) modified
- 	  HE5Wrap_store_NArray1D_or_str added point wrapper ( support only
-@@ -53,10 +82,13 @@
- 
- 2009-03-06 Friday 11:40  horikawa
- 
--	* test/: MLS-Aura_L2GP-O3_v02-21-c01_2007d059.he5 (1.1),
-+	* test/: MLS-Aura_L2GP-O3_v02-21-c01_2007d059.he5 (1.1,
-+	  ruby-hdfeos5-1_0),
- 	  OMI-Aura_L2-OMAERO_2008m0229t0011-o19277_v003-2008m0229t061514.he5
--	  (1.1), OMI-Aura_L3-OMAEROe_2008m0101_v003-2009m0114t114202.he5
--	  (1.1), test_gd.rb (1.1), test_sw.rb (1.1), test_za.rb (1.1):
-+	  (1.1, ruby-hdfeos5-1_0),
-+	  OMI-Aura_L3-OMAEROe_2008m0101_v003-2009m0114t114202.he5 (1.1,
-+	  ruby-hdfeos5-1_0), test_gd.rb (1.1), test_sw.rb (1.1), test_za.rb
-+	  (1.1):
- 	  * Set up testfile(test_sw,test_gd,test_za) and
- 	  testdata(AIRS,MLS,OMI).
- 
-@@ -214,7 +246,7 @@
- 
- 2008-06-09 Monday 15:03  horinout
- 
--	* Makefile (1.2), Makefile_CL (1.1):
-+	* Makefile (1.2), Makefile_CL (1.1, ruby-hdfeos5-1_0):
- 	  * Renamed Makefile to create ChangeLog to Makefile_CL
- 
- 2008-06-09 Monday 14:52  horinout
-@@ -247,8 +279,8 @@
- 
- 2008-06-05 Thursday 18:17  horikawa
- 
--	* SWapi.c (1.1.1.1), extconf.rb (1.1.1.1), hdfeos5_cary2obj.c
--	  (1.1.1.1), hdfeos5_obj2cary.c (1.1.1.1), lib/numru/hdfeos5.rb
--	  (1.1.1.1) (utags: Initial): initial import of ruby-hdfeos5 into
--	  CVS
-+	* SWapi.c (1.1.1.1), extconf.rb (1.1.1.1, ruby-hdfeos5-1_0),
-+	  hdfeos5_cary2obj.c (1.1.1.1, ruby-hdfeos5-1_0),
-+	  hdfeos5_obj2cary.c (1.1.1.1), lib/numru/hdfeos5.rb (1.1.1.1)
-+	  (utags: Initial): initial import of ruby-hdfeos5 into CVS
- 
-diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' ruby-hdfeos5~/extconf.rb ruby-hdfeos5/extconf.rb
---- ruby-hdfeos5~/extconf.rb	2010-12-13 19:22:54.000000000 +0900
-+++ ruby-hdfeos5/extconf.rb	2010-12-13 19:23:11.000000000 +0900
-@@ -14,9 +14,27 @@
-    exit(-1)
- end
- 
-+dir_config('hdf5',$sitearchdir,$sitearchdir)
-+
-+if ( ! ( have_header("hdf5.h") && have_library("hdf5")  ) )then
-+  print <<-EOS
-+    ** configure error **  
-+       Header hdf.h or the compiled hdf5 library is not found. 
-+       If you have the library installed under /hdf5dir (that is, hdf5.h is
-+       in /hdf5dir/include and the library in /hdf5dir/lib/),
-+       try the following:
-+
-+       % ruby extconf.rb --with-hdf5-dir=/hdf5dir
-+
-+       Alternatively, you can specify the two directory separately
-+       with --with-hdf5-include and --with-hdf5-lib.
-+  EOS
-+  exit(-1)
-+end
-+
- dir_config('hdfeos5',$sitearchdir,$sitearchdir)
- 
--if ( ! ( have_header("hdf5.h") && have_header("HE5_HdfEosDef.h") && have_library("he5_hdfeos") && have_library("hdf5")  ) )then
-+if ( ! ( have_header("HE5_HdfEosDef.h") && have_library("Gctp") && have_library("he5_hdfeos")  ) )then
-   print <<-EOS
-     ** configure error **  
-        Header hdfeos5.h or the compiled hdfeos5 library is not found. 
-diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' ruby-hdfeos5~/hdfeos5_chkdatatype.c ruby-hdfeos5/hdfeos5_chkdatatype.c
---- ruby-hdfeos5~/hdfeos5_chkdatatype.c	2010-12-13 19:22:54.000000000 +0900
-+++ ruby-hdfeos5/hdfeos5_chkdatatype.c	2010-12-13 19:23:11.000000000 +0900
+From 54adb596095f9e4ff70be290a4734813e2078951 Mon Sep 17 00:00:00 2001
+From: koshiro <koshiro>
+Date: Mon, 5 Apr 2010 06:55:14 +0000
+Subject: [PATCH 1/4] * Ruby 1.9 compatibility
+
+---
+ hdfeos5_chkdatatype.c |    3 +-
+ hdfeos5_obj2cary.c    |   37 ++++++++----
+ hdfeos5gd_wrap.c      |  153 +++++++++++++++++++++++++-----------------------
+ hdfeos5main_wrap.c    |    2 +-
+ hdfeos5pt_wrap.c      |    3 +-
+ hdfeos5sw_wrap.c      |  153 +++++++++++++++++++++++++-----------------------
+ hdfeos5za_wrap.c      |  153 +++++++++++++++++++++++++-----------------------
+ 7 files changed, 269 insertions(+), 235 deletions(-)
+
+diff --git a/hdfeos5_chkdatatype.c b/hdfeos5_chkdatatype.c
+index 3fe2fac..5639c15 100644
+--- a/hdfeos5_chkdatatype.c
++++ b/hdfeos5_chkdatatype.c
 @@ -5,8 +5,9 @@
  #include "narray.h"
  #include<string.h>
@@ -141,9 +28,10 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  #endif
  
  static VALUE rb_eHE5Error;
-diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' ruby-hdfeos5~/hdfeos5_obj2cary.c ruby-hdfeos5/hdfeos5_obj2cary.c
---- ruby-hdfeos5~/hdfeos5_obj2cary.c	2010-12-13 19:22:54.000000000 +0900
-+++ ruby-hdfeos5/hdfeos5_obj2cary.c	2010-12-13 19:23:11.000000000 +0900
+diff --git a/hdfeos5_obj2cary.c b/hdfeos5_obj2cary.c
+index 51bced1..c6688ef 100644
+--- a/hdfeos5_obj2cary.c
++++ b/hdfeos5_obj2cary.c
 @@ -2,6 +2,17 @@
  #include "ruby.h"
  #include "narray.h"
@@ -162,7 +50,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  VALUE mHE5=0;
  
  /*  functions  */
-@@ -35,7 +46,7 @@
+@@ -35,7 +46,7 @@ static unsigned long long *na2cunsint64ary(VALUE);
  /*  defines  */
  #define BE_INTEGER(x) ((int)(NUM2INT(rb_Integer(x))))
  #define BE_LONG(x)    ((long)(NUM2INT(rb_Integer(x))))
@@ -171,7 +59,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  
  /*
   * hdfeos5_obj2cxxxary() : convert ruby object to c xxx type array
-@@ -271,8 +282,8 @@
+@@ -271,8 +282,8 @@ ary2ccharary(VALUE src,int size,int charlen)
  
      Check_Type(src, T_ARRAY);
  
@@ -182,7 +70,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  
      rtn = ALLOC_N(char, size);
      memset(rtn, '\0', size);
-@@ -293,8 +304,8 @@
+@@ -293,8 +304,8 @@ ary2cintary(VALUE src)
  
      Check_Type(src, T_ARRAY);
  
@@ -193,7 +81,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  
      rtn = ALLOC_N(int, len);
  
-@@ -314,8 +325,8 @@
+@@ -314,8 +325,8 @@ ary2clongary(VALUE src)
  
      Check_Type(src, T_ARRAY);
  
@@ -204,7 +92,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  
      rtn = ALLOC_N(long, len);
  
-@@ -335,8 +346,8 @@
+@@ -335,8 +346,8 @@ ary2csint64ary(VALUE src)
  
      Check_Type(src, T_ARRAY);
  
@@ -215,7 +103,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  
      rtn = ALLOC_N(signed long long, len);
  
-@@ -356,8 +367,8 @@
+@@ -356,8 +367,8 @@ ary2cunsint64ary(VALUE src)
  
      Check_Type(src, T_ARRAY);
  
@@ -226,7 +114,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  
      rtn = ALLOC_N(unsigned long long, len);
  
-@@ -377,8 +388,8 @@
+@@ -377,8 +388,8 @@ ary2cfloatary(VALUE src)
  
      Check_Type(src, T_ARRAY);
  
@@ -237,9 +125,10 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  
      rtn = ALLOC_N(float , len);
  
-diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' ruby-hdfeos5~/hdfeos5gd_wrap.c ruby-hdfeos5/hdfeos5gd_wrap.c
---- ruby-hdfeos5~/hdfeos5gd_wrap.c	2010-12-13 19:22:54.000000000 +0900
-+++ ruby-hdfeos5/hdfeos5gd_wrap.c	2010-12-13 19:23:11.000000000 +0900
+diff --git a/hdfeos5gd_wrap.c b/hdfeos5gd_wrap.c
+index e440f9f..6e2a0b7 100644
+--- a/hdfeos5gd_wrap.c
++++ b/hdfeos5gd_wrap.c
 @@ -5,8 +5,15 @@
  #include "narray.h"
  #include<string.h>
@@ -257,7 +146,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  #endif
  
  extern int   check_numbertype(char *);
-@@ -2267,12 +2274,12 @@
+@@ -2267,12 +2274,12 @@ hdfeos5_gdwritefield_char(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALU
      status = HE5_GDfieldinfo(i_gridid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -272,7 +161,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
      l_start += hs_dims[i];
        }
-@@ -2287,11 +2294,11 @@
+@@ -2287,11 +2294,11 @@ hdfeos5_gdwritefield_char(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALU
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -286,7 +175,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
      if(c_stride[i]==0) {
        rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
      }
-@@ -2309,11 +2316,11 @@
+@@ -2309,11 +2316,11 @@ hdfeos5_gdwritefield_char(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALU
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -300,7 +189,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
        l_edge +=hs_dims[i];
          }
-@@ -2363,12 +2370,12 @@
+@@ -2363,12 +2370,12 @@ hdfeos5_gdwritefield_short(VALUE mod, VALUE start, VALUE stride, VALUE edge, VAL
      status = HE5_GDfieldinfo(i_gridid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -315,7 +204,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -2383,11 +2390,11 @@
+@@ -2383,11 +2390,11 @@ hdfeos5_gdwritefield_short(VALUE mod, VALUE start, VALUE stride, VALUE edge, VAL
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -329,7 +218,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -2405,11 +2412,11 @@
+@@ -2405,11 +2412,11 @@ hdfeos5_gdwritefield_short(VALUE mod, VALUE start, VALUE stride, VALUE edge, VAL
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -343,7 +232,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
  	  l_edge +=hs_dims[i];
          }
-@@ -2459,12 +2466,12 @@
+@@ -2459,12 +2466,12 @@ hdfeos5_gdwritefield_int(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALUE
      status = HE5_GDfieldinfo(i_gridid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -358,7 +247,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
      l_start += hs_dims[i];
        }
-@@ -2479,11 +2486,11 @@
+@@ -2479,11 +2486,11 @@ hdfeos5_gdwritefield_int(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALUE
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -372,7 +261,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
      if(c_stride[i]==0) {
        rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
      }
-@@ -2501,11 +2508,11 @@
+@@ -2501,11 +2508,11 @@ hdfeos5_gdwritefield_int(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALUE
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -386,7 +275,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
        l_edge +=hs_dims[i];
          }
-@@ -2555,12 +2562,12 @@
+@@ -2555,12 +2562,12 @@ hdfeos5_gdwritefield_long(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALU
      status = HE5_GDfieldinfo(i_gridid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -401,7 +290,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
      l_start += hs_dims[i];
        }
-@@ -2575,11 +2582,11 @@
+@@ -2575,11 +2582,11 @@ hdfeos5_gdwritefield_long(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALU
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -415,7 +304,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
      if(c_stride[i]==0) {
        rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
      }
-@@ -2597,11 +2604,11 @@
+@@ -2597,11 +2604,11 @@ hdfeos5_gdwritefield_long(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALU
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -429,7 +318,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
        l_edge +=hs_dims[i];
          }
-@@ -2651,12 +2658,12 @@
+@@ -2651,12 +2658,12 @@ hdfeos5_gdwritefield_float(VALUE mod, VALUE start, VALUE stride, VALUE edge, VAL
      status = HE5_GDfieldinfo(i_gridid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -444,7 +333,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
      l_start += hs_dims[i];
        }
-@@ -2671,11 +2678,11 @@
+@@ -2671,11 +2678,11 @@ hdfeos5_gdwritefield_float(VALUE mod, VALUE start, VALUE stride, VALUE edge, VAL
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -458,7 +347,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
      if(c_stride[i]==0) {
        rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
      }
-@@ -2693,11 +2700,11 @@
+@@ -2693,11 +2700,11 @@ hdfeos5_gdwritefield_float(VALUE mod, VALUE start, VALUE stride, VALUE edge, VAL
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -472,7 +361,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
        l_edge +=hs_dims[i];
          }
-@@ -2747,12 +2754,12 @@
+@@ -2747,12 +2754,12 @@ hdfeos5_gdwritefield_double(VALUE mod, VALUE start, VALUE stride, VALUE edge, VA
      status = HE5_GDfieldinfo(i_gridid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -487,7 +376,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
      l_start += hs_dims[i];
        }
-@@ -2767,11 +2774,11 @@
+@@ -2767,11 +2774,11 @@ hdfeos5_gdwritefield_double(VALUE mod, VALUE start, VALUE stride, VALUE edge, VA
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -501,7 +390,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
      if(c_stride[i]==0) {
        rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
      }
-@@ -2789,11 +2796,11 @@
+@@ -2789,11 +2796,11 @@ hdfeos5_gdwritefield_double(VALUE mod, VALUE start, VALUE stride, VALUE edge, VA
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -515,7 +404,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
        l_edge +=hs_dims[i];
          }
-@@ -2841,13 +2848,13 @@
+@@ -2841,13 +2848,13 @@ hdfeos5_gdreadfield_char(VALUE mod, VALUE start, VALUE stride, VALUE edge)
      status = HE5_GDfieldinfo(i_gridid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -531,7 +420,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
      l_start += hs_dims[i];
        }
-@@ -2872,12 +2879,12 @@
+@@ -2872,12 +2879,12 @@ hdfeos5_gdreadfield_char(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -546,7 +435,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
      if(c_stride[i]==0) {
        rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
      }
-@@ -2902,11 +2909,11 @@
+@@ -2902,11 +2909,11 @@ hdfeos5_gdreadfield_char(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -560,7 +449,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
        l_edge +=hs_dims[i];
          }
-@@ -2955,13 +2962,13 @@
+@@ -2955,13 +2962,13 @@ hdfeos5_gdreadfield_short(VALUE mod, VALUE start, VALUE stride, VALUE edge)
      status = HE5_GDfieldinfo(i_gridid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -576,7 +465,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
      l_start += hs_dims[i];
        }
-@@ -2986,12 +2993,12 @@
+@@ -2986,12 +2993,12 @@ hdfeos5_gdreadfield_short(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -591,7 +480,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
      if(c_stride[i]==0) {
        rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
      }
-@@ -3016,11 +3023,11 @@
+@@ -3016,11 +3023,11 @@ hdfeos5_gdreadfield_short(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -605,7 +494,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
        l_edge +=hs_dims[i];
          }
-@@ -3069,13 +3076,13 @@
+@@ -3069,13 +3076,13 @@ hdfeos5_gdreadfield_int(VALUE mod, VALUE start, VALUE stride, VALUE edge)
      status = HE5_GDfieldinfo(i_gridid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -621,7 +510,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
      l_start += hs_dims[i];
        }
-@@ -3100,12 +3107,12 @@
+@@ -3100,12 +3107,12 @@ hdfeos5_gdreadfield_int(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -636,7 +525,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
      if(c_stride[i]==0) {
        rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
      }
-@@ -3130,11 +3137,11 @@
+@@ -3130,11 +3137,11 @@ hdfeos5_gdreadfield_int(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -650,7 +539,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
        l_edge +=hs_dims[i];
          }
-@@ -3183,13 +3190,13 @@
+@@ -3183,13 +3190,13 @@ hdfeos5_gdreadfield_long(VALUE mod, VALUE start, VALUE stride, VALUE edge)
      status = HE5_GDfieldinfo(i_gridid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -666,7 +555,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
      l_start += hs_dims[i];
        }
-@@ -3214,12 +3221,12 @@
+@@ -3214,12 +3221,12 @@ hdfeos5_gdreadfield_long(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -681,7 +570,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
      if(c_stride[i]==0) {
        rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
      }
-@@ -3244,11 +3251,11 @@
+@@ -3244,11 +3251,11 @@ hdfeos5_gdreadfield_long(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -695,7 +584,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
        l_edge +=hs_dims[i];
          }
-@@ -3297,13 +3304,13 @@
+@@ -3297,13 +3304,13 @@ hdfeos5_gdreadfield_float(VALUE mod, VALUE start, VALUE stride, VALUE edge)
      status = HE5_GDfieldinfo(i_gridid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -711,7 +600,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
      l_start += hs_dims[i];
        }
-@@ -3328,12 +3335,12 @@
+@@ -3328,12 +3335,12 @@ hdfeos5_gdreadfield_float(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -726,7 +615,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
      if(c_stride[i]==0) {
        rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
      }
-@@ -3358,11 +3365,11 @@
+@@ -3358,11 +3365,11 @@ hdfeos5_gdreadfield_float(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -740,7 +629,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
        l_edge +=hs_dims[i];
          }
-@@ -3411,13 +3418,13 @@
+@@ -3411,13 +3418,13 @@ hdfeos5_gdreadfield_double(VALUE mod, VALUE start, VALUE stride, VALUE edge)
      status = HE5_GDfieldinfo(i_gridid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -756,7 +645,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
      l_start += hs_dims[i];
        }
-@@ -3442,12 +3449,12 @@
+@@ -3442,12 +3449,12 @@ hdfeos5_gdreadfield_double(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -771,7 +660,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
      if(c_stride[i]==0) {
        rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
      }
-@@ -3472,11 +3479,11 @@
+@@ -3472,11 +3479,11 @@ hdfeos5_gdreadfield_double(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -785,9 +674,10 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
        l_edge +=hs_dims[i];
          }
-diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' ruby-hdfeos5~/hdfeos5main_wrap.c ruby-hdfeos5/hdfeos5main_wrap.c
---- ruby-hdfeos5~/hdfeos5main_wrap.c	2010-12-13 19:22:54.000000000 +0900
-+++ ruby-hdfeos5/hdfeos5main_wrap.c	2010-12-13 19:23:11.000000000 +0900
+diff --git a/hdfeos5main_wrap.c b/hdfeos5main_wrap.c
+index 9cd352d..76a2a76 100644
+--- a/hdfeos5main_wrap.c
++++ b/hdfeos5main_wrap.c
 @@ -6,7 +6,7 @@
  #include<string.h>
  
@@ -797,9 +687,10 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  #endif
  
  VALUE rb_eHE5Error;
-diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' ruby-hdfeos5~/hdfeos5pt_wrap.c ruby-hdfeos5/hdfeos5pt_wrap.c
---- ruby-hdfeos5~/hdfeos5pt_wrap.c	2010-12-13 19:22:54.000000000 +0900
-+++ ruby-hdfeos5/hdfeos5pt_wrap.c	2010-12-13 19:23:11.000000000 +0900
+diff --git a/hdfeos5pt_wrap.c b/hdfeos5pt_wrap.c
+index 603fc74..1e5664d 100644
+--- a/hdfeos5pt_wrap.c
++++ b/hdfeos5pt_wrap.c
 @@ -5,8 +5,9 @@
  #include "narray.h"
  #include<string.h>
@@ -811,9 +702,10 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  #endif
  
  extern int   check_numbertype(char *);
-diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' ruby-hdfeos5~/hdfeos5sw_wrap.c ruby-hdfeos5/hdfeos5sw_wrap.c
---- ruby-hdfeos5~/hdfeos5sw_wrap.c	2010-12-13 19:22:54.000000000 +0900
-+++ ruby-hdfeos5/hdfeos5sw_wrap.c	2010-12-13 19:23:11.000000000 +0900
+diff --git a/hdfeos5sw_wrap.c b/hdfeos5sw_wrap.c
+index e0fc6b1..846fd72 100644
+--- a/hdfeos5sw_wrap.c
++++ b/hdfeos5sw_wrap.c
 @@ -5,8 +5,15 @@
  #include "narray.h"
  #include<string.h>
@@ -831,7 +723,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  #endif
  
  extern int   check_numbertype(char *);
-@@ -2936,12 +2943,12 @@
+@@ -2936,12 +2943,12 @@ hdfeos5_swwritefield_char(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALU
      status = HE5_SWfieldinfo(i_swathid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -846,7 +738,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -2956,11 +2963,11 @@
+@@ -2956,11 +2963,11 @@ hdfeos5_swwritefield_char(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALU
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -860,7 +752,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -2978,11 +2985,11 @@
+@@ -2978,11 +2985,11 @@ hdfeos5_swwritefield_char(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALU
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -874,7 +766,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
  	  l_edge +=hs_dims[i];
          }
-@@ -3032,12 +3039,12 @@
+@@ -3032,12 +3039,12 @@ hdfeos5_swwritefield_short(VALUE mod, VALUE start, VALUE stride, VALUE edge, VAL
      status = HE5_SWfieldinfo(i_swathid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -889,7 +781,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -3052,11 +3059,11 @@
+@@ -3052,11 +3059,11 @@ hdfeos5_swwritefield_short(VALUE mod, VALUE start, VALUE stride, VALUE edge, VAL
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -903,7 +795,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -3074,11 +3081,11 @@
+@@ -3074,11 +3081,11 @@ hdfeos5_swwritefield_short(VALUE mod, VALUE start, VALUE stride, VALUE edge, VAL
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -917,7 +809,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
  	  l_edge +=hs_dims[i];
          }
-@@ -3128,12 +3135,12 @@
+@@ -3128,12 +3135,12 @@ hdfeos5_swwritefield_int(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALUE
      status = HE5_SWfieldinfo(i_swathid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -932,7 +824,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -3148,11 +3155,11 @@
+@@ -3148,11 +3155,11 @@ hdfeos5_swwritefield_int(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALUE
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -946,7 +838,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -3170,11 +3177,11 @@
+@@ -3170,11 +3177,11 @@ hdfeos5_swwritefield_int(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALUE
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -960,7 +852,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
  	  l_edge +=hs_dims[i];
          }
-@@ -3224,12 +3231,12 @@
+@@ -3224,12 +3231,12 @@ hdfeos5_swwritefield_long(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALU
      status = HE5_SWfieldinfo(i_swathid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -975,7 +867,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -3244,11 +3251,11 @@
+@@ -3244,11 +3251,11 @@ hdfeos5_swwritefield_long(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALU
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -989,7 +881,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -3266,11 +3273,11 @@
+@@ -3266,11 +3273,11 @@ hdfeos5_swwritefield_long(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALU
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -1003,7 +895,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
  	  l_edge +=hs_dims[i];
          }
-@@ -3320,12 +3327,12 @@
+@@ -3320,12 +3327,12 @@ hdfeos5_swwritefield_float(VALUE mod, VALUE start, VALUE stride, VALUE edge, VAL
      status = HE5_SWfieldinfo(i_swathid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1018,7 +910,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -3340,11 +3347,11 @@
+@@ -3340,11 +3347,11 @@ hdfeos5_swwritefield_float(VALUE mod, VALUE start, VALUE stride, VALUE edge, VAL
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1032,7 +924,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -3362,11 +3369,11 @@
+@@ -3362,11 +3369,11 @@ hdfeos5_swwritefield_float(VALUE mod, VALUE start, VALUE stride, VALUE edge, VAL
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -1046,7 +938,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
  	  l_edge +=hs_dims[i];
          }
-@@ -3416,12 +3423,12 @@
+@@ -3416,12 +3423,12 @@ hdfeos5_swwritefield_double(VALUE mod, VALUE start, VALUE stride, VALUE edge, VA
      status = HE5_SWfieldinfo(i_swathid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1061,7 +953,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -3436,11 +3443,11 @@
+@@ -3436,11 +3443,11 @@ hdfeos5_swwritefield_double(VALUE mod, VALUE start, VALUE stride, VALUE edge, VA
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1075,7 +967,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -3458,11 +3465,11 @@
+@@ -3458,11 +3465,11 @@ hdfeos5_swwritefield_double(VALUE mod, VALUE start, VALUE stride, VALUE edge, VA
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -1089,7 +981,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
  	  l_edge +=hs_dims[i];
          }
-@@ -3511,13 +3518,13 @@
+@@ -3511,13 +3518,13 @@ hdfeos5_swreadfield_char(VALUE mod, VALUE start, VALUE stride, VALUE edge)
      status = HE5_SWfieldinfo(i_swathid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1105,7 +997,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -3542,12 +3549,12 @@
+@@ -3542,12 +3549,12 @@ hdfeos5_swreadfield_char(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1120,7 +1012,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -3572,11 +3579,11 @@
+@@ -3572,11 +3579,11 @@ hdfeos5_swreadfield_char(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -1134,7 +1026,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
  	  l_edge +=hs_dims[i];
          }
-@@ -3625,13 +3632,13 @@
+@@ -3625,13 +3632,13 @@ hdfeos5_swreadfield_short(VALUE mod, VALUE start, VALUE stride, VALUE edge)
      status = HE5_SWfieldinfo(i_swathid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1150,7 +1042,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -3656,12 +3663,12 @@
+@@ -3656,12 +3663,12 @@ hdfeos5_swreadfield_short(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1165,7 +1057,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -3686,11 +3693,11 @@
+@@ -3686,11 +3693,11 @@ hdfeos5_swreadfield_short(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -1179,7 +1071,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
  	  l_edge +=hs_dims[i];
          }
-@@ -3739,13 +3746,13 @@
+@@ -3739,13 +3746,13 @@ hdfeos5_swreadfield_int(VALUE mod, VALUE start, VALUE stride, VALUE edge)
      status = HE5_SWfieldinfo(i_swathid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1195,7 +1087,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -3770,12 +3777,12 @@
+@@ -3770,12 +3777,12 @@ hdfeos5_swreadfield_int(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1210,7 +1102,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -3800,11 +3807,11 @@
+@@ -3800,11 +3807,11 @@ hdfeos5_swreadfield_int(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -1224,7 +1116,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
  	  l_edge +=hs_dims[i];
          }
-@@ -3853,13 +3860,13 @@
+@@ -3853,13 +3860,13 @@ hdfeos5_swreadfield_long(VALUE mod, VALUE start, VALUE stride, VALUE edge)
      status = HE5_SWfieldinfo(i_swathid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1240,7 +1132,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -3884,12 +3891,12 @@
+@@ -3884,12 +3891,12 @@ hdfeos5_swreadfield_long(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1255,7 +1147,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -3914,11 +3921,11 @@
+@@ -3914,11 +3921,11 @@ hdfeos5_swreadfield_long(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -1269,7 +1161,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
  	  l_edge +=hs_dims[i];
          }
-@@ -3967,13 +3974,13 @@
+@@ -3967,13 +3974,13 @@ hdfeos5_swreadfield_float(VALUE mod, VALUE start, VALUE stride, VALUE edge)
      status = HE5_SWfieldinfo(i_swathid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1285,7 +1177,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -3998,12 +4005,12 @@
+@@ -3998,12 +4005,12 @@ hdfeos5_swreadfield_float(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1300,7 +1192,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -4028,11 +4035,11 @@
+@@ -4028,11 +4035,11 @@ hdfeos5_swreadfield_float(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -1314,7 +1206,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
  	  l_edge +=hs_dims[i];
          }
-@@ -4081,13 +4088,13 @@
+@@ -4081,13 +4088,13 @@ hdfeos5_swreadfield_double(VALUE mod, VALUE start, VALUE stride, VALUE edge)
      status = HE5_SWfieldinfo(i_swathid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1330,7 +1222,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -4112,12 +4119,12 @@
+@@ -4112,12 +4119,12 @@ hdfeos5_swreadfield_double(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1345,7 +1237,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -4142,11 +4149,11 @@
+@@ -4142,11 +4149,11 @@ hdfeos5_swreadfield_double(VALUE mod, VALUE start, VALUE stride, VALUE edge)
        break;
      default:
        Check_Type(edge,T_ARRAY);
@@ -1359,9 +1251,10 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_edge < 0) {
  	  l_edge +=hs_dims[i];
          }
-diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' ruby-hdfeos5~/hdfeos5za_wrap.c ruby-hdfeos5/hdfeos5za_wrap.c
---- ruby-hdfeos5~/hdfeos5za_wrap.c	2010-12-13 19:22:54.000000000 +0900
-+++ ruby-hdfeos5/hdfeos5za_wrap.c	2010-12-13 19:23:11.000000000 +0900
+diff --git a/hdfeos5za_wrap.c b/hdfeos5za_wrap.c
+index adf9261..a49725f 100644
+--- a/hdfeos5za_wrap.c
++++ b/hdfeos5za_wrap.c
 @@ -5,8 +5,15 @@
  #include "narray.h"
  #include<string.h>
@@ -1379,7 +1272,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  #endif
  
  extern int   check_numbertype(char *);
-@@ -1826,12 +1833,12 @@
+@@ -1826,12 +1833,12 @@ hdfeos5_zawrite_char(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE da
      status = HE5_ZAinfo(i_zaid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1394,7 +1287,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -1846,11 +1853,11 @@
+@@ -1846,11 +1853,11 @@ hdfeos5_zawrite_char(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE da
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1408,7 +1301,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -1868,11 +1875,11 @@
+@@ -1868,11 +1875,11 @@ hdfeos5_zawrite_char(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE da
        break;
      default:
        Check_Type(count,T_ARRAY);
@@ -1422,7 +1315,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_count < 0) {
  	  l_count +=hs_dims[i];
          }
-@@ -1922,12 +1929,12 @@
+@@ -1922,12 +1929,12 @@ hdfeos5_zawrite_short(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE d
      status = HE5_ZAinfo(i_zaid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1437,7 +1330,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -1942,11 +1949,11 @@
+@@ -1942,11 +1949,11 @@ hdfeos5_zawrite_short(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE d
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1451,7 +1344,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -1964,11 +1971,11 @@
+@@ -1964,11 +1971,11 @@ hdfeos5_zawrite_short(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE d
        break;
      default:
        Check_Type(count,T_ARRAY);
@@ -1465,7 +1358,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_count < 0) {
  	  l_count +=hs_dims[i];
          }
-@@ -2018,12 +2025,12 @@
+@@ -2018,12 +2025,12 @@ hdfeos5_zawrite_int(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE dat
      status = HE5_ZAinfo(i_zaid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1480,7 +1373,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -2038,11 +2045,11 @@
+@@ -2038,11 +2045,11 @@ hdfeos5_zawrite_int(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE dat
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1494,7 +1387,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -2060,11 +2067,11 @@
+@@ -2060,11 +2067,11 @@ hdfeos5_zawrite_int(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE dat
        break;
      default:
        Check_Type(count,T_ARRAY);
@@ -1508,7 +1401,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_count < 0) {
  	  l_count +=hs_dims[i];
          }
-@@ -2114,12 +2121,12 @@
+@@ -2114,12 +2121,12 @@ hdfeos5_zawrite_long(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE da
      status = HE5_ZAinfo(i_zaid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1523,7 +1416,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -2134,11 +2141,11 @@
+@@ -2134,11 +2141,11 @@ hdfeos5_zawrite_long(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE da
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1537,7 +1430,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -2156,11 +2163,11 @@
+@@ -2156,11 +2163,11 @@ hdfeos5_zawrite_long(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE da
        break;
      default:
        Check_Type(count,T_ARRAY);
@@ -1551,7 +1444,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_count < 0) {
  	  l_count +=hs_dims[i];
          }
-@@ -2210,12 +2217,12 @@
+@@ -2210,12 +2217,12 @@ hdfeos5_zawrite_float(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE d
      status = HE5_ZAinfo(i_zaid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1566,7 +1459,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -2230,11 +2237,11 @@
+@@ -2230,11 +2237,11 @@ hdfeos5_zawrite_float(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE d
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1580,7 +1473,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -2252,11 +2259,11 @@
+@@ -2252,11 +2259,11 @@ hdfeos5_zawrite_float(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE d
        break;
      default:
        Check_Type(count,T_ARRAY);
@@ -1594,7 +1487,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_count < 0) {
  	  l_count +=hs_dims[i];
          }
-@@ -2306,12 +2313,12 @@
+@@ -2306,12 +2313,12 @@ hdfeos5_zawrite_double(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE
      status = HE5_ZAinfo(i_zaid, i_fldname, &i_rank, hs_dims, &i_ntype, o_dimlist, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1609,7 +1502,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -2326,11 +2333,11 @@
+@@ -2326,11 +2333,11 @@ hdfeos5_zawrite_double(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1623,7 +1516,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -2348,11 +2355,11 @@
+@@ -2348,11 +2355,11 @@ hdfeos5_zawrite_double(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE
        break;
      default:
        Check_Type(count,T_ARRAY);
@@ -1637,7 +1530,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_count < 0) {
  	  l_count +=hs_dims[i];
          }
-@@ -2401,13 +2408,13 @@
+@@ -2401,13 +2408,13 @@ hdfeos5_zaread_char(VALUE mod, VALUE start, VALUE stride, VALUE count)
      status = HE5_ZAinfo(i_zaid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1653,7 +1546,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -2432,12 +2439,12 @@
+@@ -2432,12 +2439,12 @@ hdfeos5_zaread_char(VALUE mod, VALUE start, VALUE stride, VALUE count)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1668,7 +1561,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -2462,11 +2469,11 @@
+@@ -2462,11 +2469,11 @@ hdfeos5_zaread_char(VALUE mod, VALUE start, VALUE stride, VALUE count)
        break;
      default:
        Check_Type(count,T_ARRAY);
@@ -1682,7 +1575,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_count < 0) {
  	  l_count +=hs_dims[i];
          }
-@@ -2515,13 +2522,13 @@
+@@ -2515,13 +2522,13 @@ hdfeos5_zaread_short(VALUE mod, VALUE start, VALUE stride, VALUE count)
      status = HE5_ZAinfo(i_zaid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1698,7 +1591,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -2546,12 +2553,12 @@
+@@ -2546,12 +2553,12 @@ hdfeos5_zaread_short(VALUE mod, VALUE start, VALUE stride, VALUE count)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1713,7 +1606,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -2576,11 +2583,11 @@
+@@ -2576,11 +2583,11 @@ hdfeos5_zaread_short(VALUE mod, VALUE start, VALUE stride, VALUE count)
        break;
      default:
        Check_Type(count,T_ARRAY);
@@ -1727,7 +1620,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_count < 0) {
  	  l_count +=hs_dims[i];
          }
-@@ -2629,13 +2636,13 @@
+@@ -2629,13 +2636,13 @@ hdfeos5_zaread_int(VALUE mod, VALUE start, VALUE stride, VALUE count)
      status = HE5_ZAinfo(i_zaid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1743,7 +1636,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -2660,12 +2667,12 @@
+@@ -2660,12 +2667,12 @@ hdfeos5_zaread_int(VALUE mod, VALUE start, VALUE stride, VALUE count)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1758,7 +1651,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -2690,11 +2697,11 @@
+@@ -2690,11 +2697,11 @@ hdfeos5_zaread_int(VALUE mod, VALUE start, VALUE stride, VALUE count)
        break;
      default:
        Check_Type(count,T_ARRAY);
@@ -1772,7 +1665,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_count < 0) {
  	  l_count +=hs_dims[i];
          }
-@@ -2743,13 +2750,13 @@
+@@ -2743,13 +2750,13 @@ hdfeos5_zaread_long(VALUE mod, VALUE start, VALUE stride, VALUE count)
      status = HE5_ZAinfo(i_zaid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1788,7 +1681,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -2774,12 +2781,12 @@
+@@ -2774,12 +2781,12 @@ hdfeos5_zaread_long(VALUE mod, VALUE start, VALUE stride, VALUE count)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1803,7 +1696,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -2804,11 +2811,11 @@
+@@ -2804,11 +2811,11 @@ hdfeos5_zaread_long(VALUE mod, VALUE start, VALUE stride, VALUE count)
        break;
      default:
        Check_Type(count,T_ARRAY);
@@ -1817,7 +1710,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_count < 0) {
  	  l_count +=hs_dims[i];
          }
-@@ -2857,13 +2864,13 @@
+@@ -2857,13 +2864,13 @@ hdfeos5_zaread_float(VALUE mod, VALUE start, VALUE stride, VALUE count)
      status = HE5_ZAinfo(i_zaid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1833,7 +1726,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -2888,12 +2895,12 @@
+@@ -2888,12 +2895,12 @@ hdfeos5_zaread_float(VALUE mod, VALUE start, VALUE stride, VALUE count)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1848,7 +1741,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -2918,11 +2925,11 @@
+@@ -2918,11 +2925,11 @@ hdfeos5_zaread_float(VALUE mod, VALUE start, VALUE stride, VALUE count)
        break;
      default:
        Check_Type(count,T_ARRAY);
@@ -1862,7 +1755,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_count < 0) {
  	  l_count +=hs_dims[i];
          }
-@@ -2971,13 +2978,13 @@
+@@ -2971,13 +2978,13 @@ hdfeos5_zaread_double(VALUE mod, VALUE start, VALUE stride, VALUE count)
      status = HE5_ZAinfo(i_zaid, i_fldname, &i_rank, hs_dims, &i_ntype, NULL, NULL);
  
      Check_Type(start,T_ARRAY);
@@ -1878,7 +1771,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
        if(l_start < 0) {
  	l_start += hs_dims[i];
        }
-@@ -3002,12 +3009,12 @@
+@@ -3002,12 +3009,12 @@ hdfeos5_zaread_double(VALUE mod, VALUE start, VALUE stride, VALUE count)
        break;
      default:
        Check_Type(stride,T_ARRAY);
@@ -1893,7 +1786,7 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
  	if(c_stride[i]==0) {
  	  rb_raise(rb_eHE5Error, "stride cannot be zero [%s:%d]",__FILE__,__LINE__);
  	}
-@@ -3032,11 +3039,11 @@
+@@ -3032,11 +3039,11 @@ hdfeos5_zaread_double(VALUE mod, VALUE start, VALUE stride, VALUE count)
        break;
      default:
        Check_Type(count,T_ARRAY);
@@ -1907,3 +1800,6 @@ diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch'
          if(l_count < 0) {
  	  l_count +=hs_dims[i];
          }
+-- 
+1.7.2.3
+
diff --git a/debian/patches/0002-update-ChangeLog.patch b/debian/patches/0002-update-ChangeLog.patch
new file mode 100644
index 0000000..7c0c04f
--- /dev/null
+++ b/debian/patches/0002-update-ChangeLog.patch
@@ -0,0 +1,110 @@
+From 818c5d8e62da3eed23ac1ebfe0a6ec49b141e9ff Mon Sep 17 00:00:00 2001
+From: koshiro <koshiro>
+Date: Mon, 5 Apr 2010 06:58:57 +0000
+Subject: [PATCH 2/4] * update ChangeLog
+
+---
+ ChangeLog |   62 ++++++++++++++++++++++++++++++++++++++++++++++--------------
+ 1 files changed, 47 insertions(+), 15 deletions(-)
+
+diff --git a/ChangeLog b/ChangeLog
+index 4bf9862..16dc8be 100644
+--- a/ChangeLog
++++ b/ChangeLog
+@@ -6,18 +6,47 @@ This file is generated automatically by
+  This script is available from  http://www.red-bean.com/cvs2cl/
+ 
+ 
++2010-04-05 Monday 15:55  koshiro
++
++	* hdfeos5_chkdatatype.c (1.4), hdfeos5_obj2cary.c (1.4),
++	  hdfeos5gd_wrap.c (1.5), hdfeos5main_wrap.c (1.3),
++	  hdfeos5pt_wrap.c (1.3), hdfeos5sw_wrap.c (1.12), hdfeos5za_wrap.c
++	  (1.6):
++
++	  * Ruby 1.9 compatibility
++
++2010-04-05 Monday 15:28  koshiro
++
++	* extconf.rb (1.2):
++
++	  * extconf.rb: bug fix.
++
++2009-07-03 Friday 19:42  horikawa
++
++	* lib/hdfeos5.rb (1.21, ruby-hdfeos5-1_0):
++	   bugfix
++
++2009-04-24 Friday 16:20  horikawa
++
++	* ChangeLog (1.8, ruby-hdfeos5-1_0), hdfeos5za_wrap.c (1.5,
++	  ruby-hdfeos5-1_0), lib/hdfeos5.rb (1.20), test/test_za.rb (1.3,
++	  ruby-hdfeos5-1_0): changed  info() to  fieldinfo()
++
+ 2009-04-22 Wednesday 13:54  horikawa
+ 
+-	* ChangeLog (1.7), hdfeos5pt_wrap.c (1.2), test/test_pt.rb (1.2):
+-	  supported linkage point (point wrapper)
++	* ChangeLog (1.7), hdfeos5pt_wrap.c (1.2, ruby-hdfeos5-1_0),
++	  test/test_pt.rb (1.2, ruby-hdfeos5-1_0): supported linkage point
++	  (point wrapper)
+ 
+ 2009-04-20 Monday 13:11  horikawa
+ 
+-	* ChangeLog (1.6), hdfeos5_chkdatatype.c (1.3), hdfeos5_obj2cary.c
+-	  (1.3), hdfeos5gd_wrap.c (1.4), hdfeos5main_wrap.c (1.2),
+-	  hdfeos5pt_wrap.c (1.1), hdfeos5sw_wrap.c (1.11), hdfeos5za_wrap.c
+-	  (1.4), lib/hdfeos5.rb (1.19), test/test_gd.rb (1.2),
+-	  test/test_pt.rb (1.1), test/test_sw.rb (1.2), test/test_za.rb
++	* ChangeLog (1.6), hdfeos5_chkdatatype.c (1.3, ruby-hdfeos5-1_0),
++	  hdfeos5_obj2cary.c (1.3, ruby-hdfeos5-1_0), hdfeos5gd_wrap.c
++	  (1.4, ruby-hdfeos5-1_0), hdfeos5main_wrap.c (1.2,
++	  ruby-hdfeos5-1_0), hdfeos5pt_wrap.c (1.1), hdfeos5sw_wrap.c
++	  (1.11, ruby-hdfeos5-1_0), hdfeos5za_wrap.c (1.4), lib/hdfeos5.rb
++	  (1.19), test/test_gd.rb (1.2, ruby-hdfeos5-1_0), test/test_pt.rb
++	  (1.1), test/test_sw.rb (1.2, ruby-hdfeos5-1_0), test/test_za.rb
+ 	  (1.2): modified simple_put and put_with_miss modified the
+ 	  readfield function ( swath / grid / zonal ) modified
+ 	  HE5Wrap_store_NArray1D_or_str added point wrapper ( support only
+@@ -53,10 +82,13 @@ This file is generated automatically by
+ 
+ 2009-03-06 Friday 11:40  horikawa
+ 
+-	* test/: MLS-Aura_L2GP-O3_v02-21-c01_2007d059.he5 (1.1),
++	* test/: MLS-Aura_L2GP-O3_v02-21-c01_2007d059.he5 (1.1,
++	  ruby-hdfeos5-1_0),
+ 	  OMI-Aura_L2-OMAERO_2008m0229t0011-o19277_v003-2008m0229t061514.he5
+-	  (1.1), OMI-Aura_L3-OMAEROe_2008m0101_v003-2009m0114t114202.he5
+-	  (1.1), test_gd.rb (1.1), test_sw.rb (1.1), test_za.rb (1.1):
++	  (1.1, ruby-hdfeos5-1_0),
++	  OMI-Aura_L3-OMAEROe_2008m0101_v003-2009m0114t114202.he5 (1.1,
++	  ruby-hdfeos5-1_0), test_gd.rb (1.1), test_sw.rb (1.1), test_za.rb
++	  (1.1):
+ 	  * Set up testfile(test_sw,test_gd,test_za) and
+ 	  testdata(AIRS,MLS,OMI).
+ 
+@@ -214,7 +246,7 @@ This file is generated automatically by
+ 
+ 2008-06-09 Monday 15:03  horinout
+ 
+-	* Makefile (1.2), Makefile_CL (1.1):
++	* Makefile (1.2), Makefile_CL (1.1, ruby-hdfeos5-1_0):
+ 	  * Renamed Makefile to create ChangeLog to Makefile_CL
+ 
+ 2008-06-09 Monday 14:52  horinout
+@@ -247,8 +279,8 @@ This file is generated automatically by
+ 
+ 2008-06-05 Thursday 18:17  horikawa
+ 
+-	* SWapi.c (1.1.1.1), extconf.rb (1.1.1.1), hdfeos5_cary2obj.c
+-	  (1.1.1.1), hdfeos5_obj2cary.c (1.1.1.1), lib/numru/hdfeos5.rb
+-	  (1.1.1.1) (utags: Initial): initial import of ruby-hdfeos5 into
+-	  CVS
++	* SWapi.c (1.1.1.1), extconf.rb (1.1.1.1, ruby-hdfeos5-1_0),
++	  hdfeos5_cary2obj.c (1.1.1.1, ruby-hdfeos5-1_0),
++	  hdfeos5_obj2cary.c (1.1.1.1), lib/numru/hdfeos5.rb (1.1.1.1)
++	  (utags: Initial): initial import of ruby-hdfeos5 into CVS
+ 
+-- 
+1.7.2.3
+
diff --git a/debian/patches/0003-Ruby-1.9.2-compatibility.patch b/debian/patches/0003-Ruby-1.9.2-compatibility.patch
new file mode 100644
index 0000000..eee8bed
--- /dev/null
+++ b/debian/patches/0003-Ruby-1.9.2-compatibility.patch
@@ -0,0 +1,1673 @@
+From 0ba642940f79760ab8143c43eb1a25c5d085e771 Mon Sep 17 00:00:00 2001
+From: koshiro <koshiro>
+Date: Tue, 28 Dec 2010 01:36:19 +0000
+Subject: [PATCH 3/4] * Ruby 1.9.2 compatibility
+
+---
+ hdfeos5_chkdatatype.c |    5 +-
+ hdfeos5_obj2cary.c    |    9 ++-
+ hdfeos5gd_wrap.c      |  101 +++++++++++++++--------------
+ hdfeos5main_wrap.c    |    7 ++-
+ hdfeos5pt_wrap.c      |   53 ++++++++-------
+ hdfeos5sw_wrap.c      |  171 +++++++++++++++++++++++++------------------------
+ hdfeos5za_wrap.c      |  101 +++++++++++++++--------------
+ 7 files changed, 235 insertions(+), 212 deletions(-)
+
+diff --git a/hdfeos5_chkdatatype.c b/hdfeos5_chkdatatype.c
+index 5639c15..e01a12b 100644
+--- a/hdfeos5_chkdatatype.c
++++ b/hdfeos5_chkdatatype.c
+@@ -9,6 +9,9 @@
+ #ifndef RSTRING_PTR
+ #define RSTRING_PTR(s) (RSTRING(s)->ptr)
+ #endif
++#ifndef SafeStringValue
++#define SafeStringValue(s) Check_SafeStr(s)
++#endif
+ 
+ static VALUE rb_eHE5Error;
+ 
+@@ -79,7 +82,7 @@ HE5Wrap_store_NArray1D_or_str(int ntype, VALUE obj, void **ptr){
+     case  HE5T_CHARSTRING:
+         switch (TYPE(obj)){
+         case T_STRING:
+-          Check_SafeStr(obj);
++          SafeStringValue(obj);
+           *ptr = (char *) RSTRING_PTR(obj);
+           break;
+         case T_ARRAY:
+diff --git a/hdfeos5_obj2cary.c b/hdfeos5_obj2cary.c
+index c6688ef..513fcc6 100644
+--- a/hdfeos5_obj2cary.c
++++ b/hdfeos5_obj2cary.c
+@@ -12,6 +12,9 @@
+ #ifndef RFLOAT_VALUE
+ #define RFLOAT_VALUE(v) (RFLOAT(v)->value)
+ #endif
++#ifndef StringValueCStr
++#define StringValueCStr(s) STR2CSTR(s)
++#endif
+ 
+ VALUE mHE5=0;
+ 
+@@ -174,13 +177,15 @@ hdfeos5_obj2cfloatary(VALUE src)
+     VALUE chk;
+     float *rtn;
+     char *klass;
++    VALUE klass_tmp;
+     VALUE rmiss;
+ 
+ 
+     switch (TYPE(src)){
+     case T_OBJECT:
+-	klass = STR2CSTR( rb_funcall(rb_funcall(src, rb_intern("class"),0),
+-				     rb_intern("to_s"),0) );
++	klass_tmp = rb_funcall(rb_funcall(src, rb_intern("class"),0),
++				     rb_intern("to_s"),0);
++	klass = StringValueCStr(klass_tmp);
+ 	if (strncmp(klass,"NArrayMiss",10) != 0) {
+ 	    rb_raise(rb_eTypeError, "a numeric array expected");
+ 	}
+diff --git a/hdfeos5gd_wrap.c b/hdfeos5gd_wrap.c
+index 6e2a0b7..069c3ba 100644
+--- a/hdfeos5gd_wrap.c
++++ b/hdfeos5gd_wrap.c
+@@ -15,6 +15,9 @@
+ #ifndef RSTRING_PTR
+ #define RSTRING_PTR(s) (RSTRING(s)->ptr)
+ #endif
++#ifndef SafeStringValue
++#define SafeStringValue(s) Check_SafeStr(s)
++#endif
+ 
+ extern int   check_numbertype(char *);
+ extern int   change_numbertype(char *);
+@@ -284,7 +287,7 @@ gdnentries_count(hid_t i_gridid, VALUE entrycode)
+     long o_count;
+ 
+     Check_Type(entrycode,T_STRING);
+-    Check_SafeStr(entrycode);
++    SafeStringValue(entrycode);
+     c_entrycode = RSTRING_PTR(entrycode);
+ 
+     o_count = HE5_GDnentries(i_gridid, change_entrycode(c_entrycode), &o_strbufsize);
+@@ -300,7 +303,7 @@ gdnentries_strbuf(hid_t i_gridid, VALUE entrycode)
+     long o_count;
+ 
+     Check_Type(entrycode,T_STRING);
+-    Check_SafeStr(entrycode);
++    SafeStringValue(entrycode);
+     c_entrycode = RSTRING_PTR(entrycode);
+ 
+     o_count = HE5_GDnentries(i_gridid, change_entrycode(c_entrycode), &o_strbufsize);
+@@ -329,7 +332,7 @@ hdfeos5_gdcreate(VALUE mod, VALUE gridname, VALUE xdimsize, VALUE ydimsize, VALU
+     file=he5file->name;
+ 
+     Check_Type(gridname,T_STRING);
+-    Check_SafeStr(gridname);
++    SafeStringValue(gridname);
+     i_gridname = RSTRING_PTR(gridname);
+     Check_Type(xdimsize,T_FIXNUM);
+     i_xdimsize = NUM2INT(xdimsize);
+@@ -369,7 +372,7 @@ hdfeos5_gdattach(VALUE mod, VALUE gridname)
+     i_fname=he5file->name;
+ 
+     Check_Type(gridname,T_STRING);
+-    Check_SafeStr(gridname);
++    SafeStringValue(gridname);
+     i_gridname = RSTRING_PTR(gridname);
+ 
+     gdid = HE5_GDattach(i_fid, i_gridname);
+@@ -394,7 +397,7 @@ hdfeos5_gddefdim(VALUE mod, VALUE dimname, VALUE dim)
+     Data_Get_Struct(mod, struct HE5Gd, he5grid);
+     i_gridid=he5grid->gdid;
+     Check_Type(dimname,T_STRING);
+-    Check_SafeStr(dimname);
++    SafeStringValue(dimname);
+     Check_Type(dim,T_FIXNUM);
+     i_dimname = RSTRING_PTR(dimname);
+     i_dim = NUM2LONG(dim);
+@@ -419,7 +422,7 @@ hdfeos5_gddefproj(VALUE mod, VALUE projcode, VALUE zonecode, VALUE spherecode, V
+     Data_Get_Struct(mod, struct HE5Gd, he5grid);
+     i_gridid=he5grid->gdid;
+     Check_Type(projcode,T_STRING);
+-    Check_SafeStr(projcode);
++    SafeStringValue(projcode);
+     Check_Type(zonecode,T_FIXNUM);
+     Check_Type(spherecode,T_FIXNUM);
+     if (TYPE(projparm) == T_FLOAT) {
+@@ -449,7 +452,7 @@ hdfeos5_gdblksomoffset(VALUE mod, VALUE offset, VALUE count, VALUE code)
+     Data_Get_Struct(mod, struct HE5Gd, he5grid);
+     i_gridid=he5grid->gdid;
+     Check_Type(code,T_STRING);
+-    Check_SafeStr(code);
++    SafeStringValue(code);
+     Check_Type(offset,T_FIXNUM);
+     Check_Type(count,T_FIXNUM);
+     i_code = RSTRING_PTR(code);
+@@ -482,7 +485,7 @@ hdfeos5_gddefcomp(VALUE mod, VALUE compcode, VALUE compparm)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(compcode,T_STRING);
+-    Check_SafeStr(compcode);
++    SafeStringValue(compcode);
+     if ((TYPE(compparm) == T_BIGNUM) || (TYPE(compparm) == T_FIXNUM)) {
+       compparm = rb_Array(compparm);
+     }
+@@ -511,7 +514,7 @@ hdfeos5_gddeftile(VALUE mod, VALUE tilecode, VALUE tilerank, VALUE tiledims)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(tilecode,T_STRING);
+-    Check_SafeStr(tilecode);
++    SafeStringValue(tilecode);
+     i_tilecode = change_tilingcode(RSTRING_PTR(tilecode));
+ 
+     Check_Type(tilerank,T_FIXNUM);
+@@ -544,7 +547,7 @@ hdfeos5_gddefcomtile(VALUE mod, VALUE compcode, VALUE compparm, VALUE tilerank,
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(compcode,T_STRING);
+-    Check_SafeStr(compcode);
++    SafeStringValue(compcode);
+     if ((TYPE(compparm) == T_BIGNUM) || (TYPE(compparm) == T_FIXNUM)) {
+       compparm = rb_Array(compparm);
+     }
+@@ -579,7 +582,7 @@ hdfeos5_gddeforigin(VALUE mod, VALUE origincode)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(origincode,T_STRING);
+-    Check_SafeStr(origincode);
++    SafeStringValue(origincode);
+     i_origincode = change_gridorigincode(RSTRING_PTR(origincode));
+ 
+     o_rtn_val = HE5_GDdeforigin(i_gridid, i_origincode);
+@@ -601,7 +604,7 @@ hdfeos5_gddefpixreg(VALUE mod, VALUE pixregcode)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(pixregcode,T_STRING);
+-    Check_SafeStr(pixregcode);
++    SafeStringValue(pixregcode);
+     i_pixregcode = change_pixelregistcode(RSTRING_PTR(pixregcode));
+ 
+     o_rtn_val = HE5_GDdefpixreg(i_gridid, i_pixregcode);
+@@ -623,7 +626,7 @@ hdfeos5_gddiminfo(VALUE mod, VALUE dimname)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(dimname,T_STRING);
+-    Check_SafeStr(dimname);
++    SafeStringValue(dimname);
+     i_dimname = RSTRING_PTR(dimname);
+ 
+     o_ndim = HE5_GDdiminfo(i_gridid, i_dimname);
+@@ -845,13 +848,13 @@ hdfeos5_gddeffield(VALUE file, VALUE fieldname, VALUE dimlist, VALUE maxdimlist,
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     Check_Type(dimlist,T_STRING);
+-    Check_SafeStr(dimlist);
++    SafeStringValue(dimlist);
+     Check_Type(maxdimlist,T_STRING);
+-    Check_SafeStr(maxdimlist);
++    SafeStringValue(maxdimlist);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     Check_Type(merge,T_FIXNUM);
+ 
+     i_fieldname = RSTRING_PTR(fieldname);
+@@ -885,9 +888,9 @@ hdfeos5_gdwritefieldmeta(VALUE mod, VALUE dimlist, VALUE numbertype)
+     i_gridid=he5field->gdid;
+ 
+     Check_Type(dimlist,T_STRING);
+-    Check_SafeStr(dimlist);
++    SafeStringValue(dimlist);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+ 
+     i_dimlist = RSTRING_PTR(dimlist);
+     i_numbertype = change_numbertype(RSTRING_PTR(numbertype));
+@@ -902,7 +905,7 @@ hdfeos5_gdwritefield(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALUE dat
+ {
+     char *chk_ntype;
+     Check_Type(ntype,T_STRING);
+-    Check_SafeStr(ntype);
++    SafeStringValue(ntype);
+     chk_ntype = RSTRING_PTR(ntype);
+ 
+     switch (check_numbertype(chk_ntype)){
+@@ -953,7 +956,7 @@ hdfeos5_gdreadfield(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALUE ntyp
+ {
+     char *chk_ntype;
+     Check_Type(ntype,T_STRING);
+-    Check_SafeStr(ntype);
++    SafeStringValue(ntype);
+     chk_ntype = RSTRING_PTR(ntype);
+ 
+     switch (check_numbertype(chk_ntype)){
+@@ -1017,9 +1020,9 @@ hdfeos5_gdwriteattr(VALUE mod, VALUE attrname, VALUE numbertype, VALUE count, VA
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     count = rb_Array(count);
+ 
+     i_attrname = RSTRING_PTR(attrname);
+@@ -1051,7 +1054,7 @@ hdfeos5_gd_get_att(VALUE mod, VALUE attrname)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     i_attrname = RSTRING_PTR(attrname);
+ 
+     o_rtn_val = HE5_GDattrinfo(i_gridid, i_attrname, &o_ntype, &o_count);
+@@ -1107,9 +1110,9 @@ hdfeos5_gdsetfillvalue(VALUE mod, VALUE fieldname, VALUE numbertype, VALUE fillv
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     i_fieldname = RSTRING_PTR(fieldname);
+     i_numbertype = change_numbertype(RSTRING_PTR(numbertype));
+ 
+@@ -1119,7 +1122,7 @@ hdfeos5_gdsetfillvalue(VALUE mod, VALUE fieldname, VALUE numbertype, VALUE fillv
+     }
+     if (TYPE(fillval) == T_STRING) {
+       Check_Type(fillval,T_STRING);
+-      Check_SafeStr(fillval);
++      SafeStringValue(fillval);
+       i_fillval = RSTRING_PTR(fillval);
+     }
+ 
+@@ -1145,7 +1148,7 @@ hdfeos5_gdgetfillvalue(VALUE mod,VALUE fieldname)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     i_fieldname = RSTRING_PTR(fieldname);
+ 
+     o_fillval = (void*)malloc(HE5_BLKSIZE);
+@@ -1178,11 +1181,11 @@ hdfeos5_gdinqdatatype(VALUE mod, VALUE fieldname, VALUE attrname, VALUE group)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(group,T_STRING);
+-    Check_SafeStr(group);
++    SafeStringValue(group);
+ 
+     i_fieldname = RSTRING_PTR(fieldname);
+     i_attrname = RSTRING_PTR(attrname);
+@@ -1214,7 +1217,7 @@ hdfeos5_gdnentries(VALUE mod, VALUE entrycode)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(entrycode,T_STRING);
+-    Check_SafeStr(entrycode);
++    SafeStringValue(entrycode);
+     i_entrycode = change_entrycode(RSTRING_PTR(entrycode));
+ 
+     o_count = HE5_GDnentries(i_gridid, i_entrycode, &o_strbufsize);
+@@ -1374,7 +1377,7 @@ hdfeos5_gdrs2ll(VALUE mod, VALUE projcode, VALUE projparm, VALUE xdimsize, VALUE
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(projcode,T_STRING);
+-    Check_SafeStr(projcode);
++    SafeStringValue(projcode);
+     i_projcode = change_projcode(RSTRING_PTR(projcode));
+     Check_Type(xdimsize,T_FIXNUM);
+     i_xdimsize = NUM2INT(xdimsize);
+@@ -1555,7 +1558,7 @@ hdfeos5_gddefvrtregion(VALUE mod, VALUE regionid, VALUE vertobj, VALUE range)
+ 
+     Check_Type(regionid,T_FIXNUM);
+     Check_Type(vertobj,T_STRING);
+-    Check_SafeStr(vertobj);
++    SafeStringValue(vertobj);
+     if (TYPE(range) == T_FLOAT) {
+       range = rb_Array(range);
+     }
+@@ -1734,9 +1737,9 @@ hdfeos5_gdwritelocattr(VALUE mod, VALUE attrname, VALUE numbertype, VALUE count,
+     i_gridid=he5field->gdid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     count = rb_Array(count);
+ 
+     i_attrname = RSTRING_PTR(attrname);
+@@ -1769,7 +1772,7 @@ hdfeos5_gdfield_get_att(VALUE mod,VALUE  attrname)
+     i_fieldname=he5field->name;
+     i_gridid=he5field->gdid;
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     i_attrname = RSTRING_PTR(attrname);
+ 
+     o_rtn_val = HE5_GDlocattrinfo(i_gridid, i_fieldname, i_attrname, 
+@@ -1832,9 +1835,9 @@ hdfeos5_gdwritegrpattr(VALUE mod, VALUE attrname, VALUE numbertype, VALUE count,
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     count = rb_Array(count);
+ 
+     i_attrname = RSTRING_PTR(attrname);
+@@ -1867,7 +1870,7 @@ hdfeos5_gd_get_grpatt(VALUE mod, VALUE attrname)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     i_attrname = RSTRING_PTR(attrname);
+ 
+     o_rtn_val = HE5_GDgrpattrinfo(i_gridid, i_attrname, &o_ntype, &o_count);
+@@ -1894,7 +1897,7 @@ hdfeos5_gdsetextdata(VALUE mod, VALUE filelist, VALUE offset, VALUE size)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(filelist,T_STRING);
+-    Check_SafeStr(filelist);
++    SafeStringValue(filelist);
+     if ((TYPE(offset) == T_BIGNUM) || (TYPE(offset) == T_FIXNUM)) {
+       offset = rb_Array(offset);
+     }
+@@ -1934,7 +1937,7 @@ hdfeos5_gdgetextdata(VALUE mod, VALUE fieldname)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+ 
+     i_fieldname = RSTRING_PTR(fieldname);
+ 
+@@ -1964,7 +1967,7 @@ hdfeos5_gdsetalias(VALUE mod, VALUE fieldname)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     i_fieldname = RSTRING_PTR(fieldname);
+ 
+     o_rtn_val = HE5_GDsetalias(i_gridid, i_fieldname, o_aliaslist);
+@@ -1988,9 +1991,9 @@ hdfeos5_gddropalias(VALUE mod, VALUE fldgroup, VALUE aliasname)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     Check_Type(aliasname,T_STRING);
+-    Check_SafeStr(aliasname);
++    SafeStringValue(aliasname);
+ 
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+     i_aliasname = RSTRING_PTR(aliasname);
+@@ -2019,9 +2022,9 @@ hdfeos5_gdaliasinfo(VALUE mod, VALUE fldgroup, VALUE aliasname)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     Check_Type(aliasname,T_STRING);
+-    Check_SafeStr(aliasname);
++    SafeStringValue(aliasname);
+ 
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+     i_aliasname = RSTRING_PTR(aliasname);
+@@ -2078,7 +2081,7 @@ hdfeos5_gdgetaliaslist(VALUE mod, VALUE fldgroup)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+ 
+     o_nalias = HE5_GDgetaliaslist(i_gridid, i_fldgroup, o_aliaslist, &o_strbufsize);
+@@ -2142,7 +2145,7 @@ hdfeos5_gdsetfield(VALUE mod,VALUE fieldname)
+     i_gridid=he5grid->gdid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     i_fieldname = RSTRING_PTR(fieldname);
+     
+     he5field = HE5GdField_init(i_fieldname, i_gridid, mod);
+diff --git a/hdfeos5main_wrap.c b/hdfeos5main_wrap.c
+index 76a2a76..e943aef 100644
+--- a/hdfeos5main_wrap.c
++++ b/hdfeos5main_wrap.c
+@@ -8,6 +8,9 @@
+ #ifndef RSTRING_PTR
+ #define RSTRING_PTR(s) (RSTRING(s)->ptr)
+ #endif
++#ifndef SafeStringValue
++#define SafeStringValue(s) Check_SafeStr(s)
++#endif
+ 
+ VALUE rb_eHE5Error;
+ VALUE cHE5;
+@@ -72,9 +75,9 @@ hdfeos5_ehopen(VALUE mod, VALUE filename, VALUE flags)
+     struct HE5 *he5file;
+ 
+     Check_Type(filename,T_STRING);
+-    Check_SafeStr(filename);
++    SafeStringValue(filename);
+     Check_Type(flags,T_STRING);
+-    Check_SafeStr(flags);
++    SafeStringValue(flags);
+ 
+     i_filename  = RSTRING_PTR(filename);
+     i_flags     = RSTRING_PTR(flags);
+diff --git a/hdfeos5pt_wrap.c b/hdfeos5pt_wrap.c
+index 1e5664d..d052663 100644
+--- a/hdfeos5pt_wrap.c
++++ b/hdfeos5pt_wrap.c
+@@ -9,6 +9,9 @@
+ #ifndef RSTRING_PTR
+ #define RSTRING_PTR(s) (RSTRING(s)->ptr)
+ #endif
++#ifndef SafeStringValue
++#define SafeStringValue(s) Check_SafeStr(s)
++#endif
+ 
+ extern int   check_numbertype(char *);
+ extern int   change_numbertype(char *);
+@@ -542,7 +545,7 @@ hdfeos5_ptcreate(VALUE mod, VALUE pointname)
+     file=he5file->name;
+ 
+     Check_Type(pointname,T_STRING);
+-    Check_SafeStr(pointname);
++    SafeStringValue(pointname);
+     i_pointname = RSTRING_PTR(pointname);
+ 
+     ptid = HE5_PTcreate(i_fid, i_pointname);
+@@ -568,7 +571,7 @@ hdfeos5_ptattach(VALUE mod, VALUE pointname)
+     i_fname=he5file->name;
+ 
+     Check_Type(pointname,T_STRING);
+-    Check_SafeStr(pointname);
++    SafeStringValue(pointname);
+     i_pointname = RSTRING_PTR(pointname);
+ 
+     ptid = HE5_PTattach(i_fid, i_pointname);
+@@ -754,7 +757,7 @@ hdfeos5_ptdeflevel(VALUE file, VALUE levelname, VALUE nfields, VALUE rank, VALUE
+ 
+     i_nfields=NUM2INT(nfields);
+     Check_Type(levelname,T_STRING);
+-    Check_SafeStr(levelname);
++    SafeStringValue(levelname);
+     i_levelname = RSTRING_PTR(levelname);
+ 
+     i_rank=ALLOCA_N(int,i_nfields*sizeof(int));
+@@ -762,14 +765,14 @@ hdfeos5_ptdeflevel(VALUE file, VALUE levelname, VALUE nfields, VALUE rank, VALUE
+     i_rank = hdfeos5_obj2cintary(rank);
+ 
+     Check_Type(fieldlist,T_STRING);
+-    Check_SafeStr(fieldlist);
++    SafeStringValue(fieldlist);
+     i_fieldlist = RSTRING_PTR(fieldlist);
+ 
+     dimlist = rb_Array(dimlist);
+     i_dimlist = hdfeos5_obj2clongary(dimlist);
+ 
+     Check_Type(datatype,T_STRING);
+-    Check_SafeStr(datatype);
++    SafeStringValue(datatype);
+     i_datatype = RSTRING_PTR(datatype);
+     nn = HE5_EHparsestr(i_datatype, ',', pntr, slen);
+     i_array = ALLOCA_N(int, i_nfields);
+@@ -807,13 +810,13 @@ hdfeos5_ptdeflinkage(VALUE file, VALUE parent_level, VALUE child_level,VALUE lin
+     i_ptid=he5point->ptid;
+ 
+     Check_Type(parent_level,T_STRING);
+-    Check_SafeStr(parent_level);
++    SafeStringValue(parent_level);
+     i_parent_level = RSTRING_PTR(parent_level);
+     Check_Type(child_level,T_STRING);
+-    Check_SafeStr(child_level);
++    SafeStringValue(child_level);
+     i_child_level = RSTRING_PTR(child_level);
+     Check_Type(linklevel,T_STRING);
+-    Check_SafeStr(linklevel);
++    SafeStringValue(linklevel);
+     i_linklevel = RSTRING_PTR(linklevel);
+ 
+     o_rtn_val = HE5_PTdeflinkage(i_ptid, i_parent_level, i_child_level, i_linklevel);
+@@ -826,7 +829,7 @@ hdfeos5_ptwritelevel(VALUE mod, VALUE count, VALUE data, VALUE ntype)
+ {
+     char *chk_ntype;
+     Check_Type(ntype,T_STRING);
+-    Check_SafeStr(ntype);
++    SafeStringValue(ntype);
+     chk_ntype = RSTRING_PTR(ntype);
+ 
+     switch (check_numbertype(chk_ntype)){
+@@ -890,9 +893,9 @@ hdfeos5_ptwriteattr(VALUE mod, VALUE attrname, VALUE numbertype, VALUE count, VA
+     i_ptid=he5point->ptid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     count = rb_Array(count);
+ 
+     i_attrname = RSTRING_PTR(attrname);
+@@ -924,7 +927,7 @@ hdfeos5_pt_get_att(VALUE mod, VALUE attrname)
+     i_ptid=he5point->ptid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     i_attrname = RSTRING_PTR(attrname);
+ 
+     o_rtn_val = HE5_PTattrinfo(i_ptid, i_attrname, &o_ntype, &o_count);
+@@ -997,7 +1000,7 @@ hdfeos5_ptreadlevel(VALUE mod, VALUE ntype)
+ {
+     char *chk_ntype;
+     Check_Type(ntype,T_STRING);
+-    Check_SafeStr(ntype);
++    SafeStringValue(ntype);
+     chk_ntype = RSTRING_PTR(ntype);
+ 
+     switch (check_numbertype(chk_ntype)){
+@@ -1065,9 +1068,9 @@ hdfeos5_ptinqdatatype(VALUE mod, VALUE levelname, VALUE attrname, VALUE group)
+     i_ptid=he5point->ptid;
+ 
+     Check_Type(levelname,T_STRING);
+-    Check_SafeStr(levelname);
++    SafeStringValue(levelname);
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+ 
+     i_levelname = RSTRING_PTR(levelname);
+     i_attrname = RSTRING_PTR(attrname);
+@@ -1159,9 +1162,9 @@ hdfeos5_ptwritegrpattr(VALUE mod, VALUE attrname, VALUE numbertype, VALUE count,
+     i_ptid=he5point->ptid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     count = rb_Array(count);
+ 
+     i_attrname = RSTRING_PTR(attrname);
+@@ -1193,7 +1196,7 @@ hdfeos5_pt_get_grpatt(VALUE mod, VALUE attrname)
+     i_ptid=he5point->ptid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     i_attrname = RSTRING_PTR(attrname);
+ 
+     o_rtn_val = HE5_PTgrpattrinfo(i_ptid, i_attrname, &o_ntype, &o_count);
+@@ -1252,9 +1255,9 @@ hdfeos5_ptwritelocattr(VALUE mod, VALUE attrname, VALUE numbertype, VALUE count,
+     i_ptid=he5point->ptid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     count = rb_Array(count);
+ 
+     i_attrname = RSTRING_PTR(attrname);
+@@ -1287,7 +1290,7 @@ hdfeos5_ptfield_get_att(VALUE mod,VALUE  attrname)
+     i_levelname=he5point->levelname;
+     i_ptid=he5point->ptid;
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     i_attrname = RSTRING_PTR(attrname);
+ 
+     o_rtn_val = HE5_PTlocattrinfo(i_ptid, i_levelname, i_attrname, 
+@@ -1407,7 +1410,7 @@ hdfeos5_ptupdatelevel(VALUE mod, VALUE nrec, VALUE recs, VALUE data, VALUE ntype
+ {
+     char *chk_ntype;
+     Check_Type(ntype,T_STRING);
+-    Check_SafeStr(ntype);
++    SafeStringValue(ntype);
+     chk_ntype = RSTRING_PTR(ntype);
+ 
+     switch (check_numbertype(chk_ntype)){
+@@ -1511,7 +1514,7 @@ hdfeos5_ptchkfieldname(VALUE mod,VALUE levelname)
+     i_ptid=he5pt->ptid;
+ 
+     Check_Type(levelname,T_STRING);
+-    Check_SafeStr(levelname);
++    SafeStringValue(levelname);
+     i_levelname = RSTRING_PTR(levelname);
+ 
+     o_level=HE5_PTlevelindx(i_ptid, i_levelname);
+@@ -1542,7 +1545,7 @@ hdfeos5_ptsetfield(VALUE mod,VALUE fieldname)
+     i_ptid=he5pt->ptid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     i_fieldname = RSTRING_PTR(fieldname);
+ 
+     o_strbufsize = search_levelsize(i_ptid,i_fieldname);
+@@ -1567,7 +1570,7 @@ hdfeos5_ptsetfield_level(VALUE mod,VALUE fieldname,VALUE levelname)
+     i_ptid=he5pt->ptid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     i_fieldname = RSTRING_PTR(fieldname);
+     i_levelname = RSTRING_PTR(levelname);
+ 
+diff --git a/hdfeos5sw_wrap.c b/hdfeos5sw_wrap.c
+index 846fd72..55473d6 100644
+--- a/hdfeos5sw_wrap.c
++++ b/hdfeos5sw_wrap.c
+@@ -15,6 +15,9 @@
+ #ifndef RSTRING_PTR
+ #define RSTRING_PTR(s) (RSTRING(s)->ptr)
+ #endif
++#ifndef SafeStringValue
++#define SafeStringValue(s) Check_SafeStr(s)
++#endif
+ 
+ extern int   check_numbertype(char *);
+ extern int   change_numbertype(char *);
+@@ -277,7 +280,7 @@ swnentries_count(hid_t i_swathid, VALUE entrycode)
+     long o_count;
+ 
+     Check_Type(entrycode,T_STRING);
+-    Check_SafeStr(entrycode);
++    SafeStringValue(entrycode);
+     c_entrycode = RSTRING_PTR(entrycode);
+ 
+     o_count = HE5_SWnentries(i_swathid, change_entrycode(c_entrycode), &o_strbufsize);
+@@ -293,7 +296,7 @@ swnentries_strbuf(hid_t i_swathid, VALUE entrycode)
+     long o_count;
+ 
+     Check_Type(entrycode,T_STRING);
+-    Check_SafeStr(entrycode);
++    SafeStringValue(entrycode);
+     c_entrycode = RSTRING_PTR(entrycode);
+ 
+     o_count = HE5_SWnentries(i_swathid, change_entrycode(c_entrycode), &o_strbufsize);
+@@ -318,7 +321,7 @@ hdfeos5_swcreate(VALUE mod, VALUE swathname)
+     file=he5file->name;
+ 
+     Check_Type(swathname,T_STRING);
+-    Check_SafeStr(swathname);
++    SafeStringValue(swathname);
+     i_swathname = RSTRING_PTR(swathname);
+ 
+     swid = HE5_SWcreate(i_fid, i_swathname);
+@@ -344,7 +347,7 @@ hdfeos5_swattach(VALUE mod, VALUE swathname)
+     i_fname=he5file->name;
+ 
+     Check_Type(swathname,T_STRING);
+-    Check_SafeStr(swathname);
++    SafeStringValue(swathname);
+     i_swathname = RSTRING_PTR(swathname);
+ 
+     swid = HE5_SWattach(i_fid, i_swathname);
+@@ -369,7 +372,7 @@ hdfeos5_swdefdim(VALUE mod, VALUE dimname, VALUE dim)
+     Data_Get_Struct(mod, struct HE5Sw, he5swath);
+     i_swathid=he5swath->swid;
+     Check_Type(dimname,T_STRING);
+-    Check_SafeStr(dimname);
++    SafeStringValue(dimname);
+     Check_Type(dim,T_FIXNUM);
+     i_dimname = RSTRING_PTR(dimname);
+     i_dim = NUM2LONG(dim);
+@@ -392,7 +395,7 @@ hdfeos5_swdiminfo(VALUE mod, VALUE dimname)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(dimname,T_STRING);
+-    Check_SafeStr(dimname);
++    SafeStringValue(dimname);
+     i_dimname = RSTRING_PTR(dimname);
+ 
+     o_ndim = HE5_SWdiminfo(i_swathid, i_dimname);
+@@ -418,9 +421,9 @@ hdfeos5_swmapinfo(VALUE mod, VALUE geodim, VALUE datadim)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(geodim,T_STRING);
+-    Check_SafeStr(geodim);
++    SafeStringValue(geodim);
+     Check_Type(datadim,T_STRING);
+-    Check_SafeStr(datadim);
++    SafeStringValue(datadim);
+ 
+     i_geodim = RSTRING_PTR(geodim);
+     i_datadim = RSTRING_PTR(datadim);
+@@ -453,9 +456,9 @@ hdfeos5_swidxmapinfo(VALUE mod, VALUE geodim, VALUE datadim)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(geodim,T_STRING);
+-    Check_SafeStr(geodim);
++    SafeStringValue(geodim);
+     Check_Type(datadim,T_STRING);
+-    Check_SafeStr(datadim);
++    SafeStringValue(datadim);
+     dimsize = hdfeos5_swdiminfo(mod, geodim);
+     size    = NUM2INT(dimsize);
+ 
+@@ -548,7 +551,7 @@ hdfeos5_swchunkinfo(VALUE mod, VALUE fldname)
+     Data_Get_Struct(mod, struct HE5Sw, he5swath);
+     i_swathid=he5swath->swid;
+     Check_Type(fldname,T_STRING);
+-    Check_SafeStr(fldname);
++    SafeStringValue(fldname);
+     i_fldname = RSTRING_PTR(fldname);
+ 
+     o_rtn_val = HE5_SWchunkinfo(i_swathid, i_fldname, &o_chunk_rank, NULL);
+@@ -580,9 +583,9 @@ hdfeos5_swdefdimmap(VALUE mod, VALUE geodim, VALUE datadim, VALUE offset, VALUE
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(geodim,T_STRING);
+-    Check_SafeStr(geodim);
++    SafeStringValue(geodim);
+     Check_Type(datadim,T_STRING);
+-    Check_SafeStr(datadim);
++    SafeStringValue(datadim);
+     Check_Type(offset,T_FIXNUM);
+     Check_Type(increment,T_FIXNUM);
+ 
+@@ -612,9 +615,9 @@ hdfeos5_swdefidxmap(VALUE mod, VALUE geodim, VALUE datadim, VALUE index)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(geodim,T_STRING);
+-    Check_SafeStr(geodim);
++    SafeStringValue(geodim);
+     Check_Type(datadim,T_STRING);
+-    Check_SafeStr(datadim);
++    SafeStringValue(datadim);
+     if ((TYPE(index) == T_BIGNUM) || (TYPE(index) == T_FIXNUM)) {
+       index = rb_Array(index);
+     }
+@@ -671,7 +674,7 @@ hdfeos5_swdefcomp(VALUE mod, VALUE compcode, VALUE compparm)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(compcode,T_STRING);
+-    Check_SafeStr(compcode);
++    SafeStringValue(compcode);
+     if ((TYPE(compparm) == T_BIGNUM) || (TYPE(compparm) == T_FIXNUM)) {
+       compparm = rb_Array(compparm);
+     }
+@@ -701,7 +704,7 @@ hdfeos5_swdefcomchunk(VALUE mod, VALUE compcode, VALUE compparm, VALUE rank, VAL
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(compcode,T_STRING);
+-    Check_SafeStr(compcode);
++    SafeStringValue(compcode);
+     if ((TYPE(compparm) == T_BIGNUM) || (TYPE(compparm) == T_FIXNUM)) {
+       compparm = rb_Array(compparm);
+     }
+@@ -741,13 +744,13 @@ hdfeos5_swdefgeofield(VALUE file, VALUE fieldname, VALUE dimlist, VALUE maxdimli
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     Check_Type(dimlist,T_STRING);
+-    Check_SafeStr(dimlist);
++    SafeStringValue(dimlist);
+     Check_Type(maxdimlist,T_STRING);
+-    Check_SafeStr(maxdimlist);
++    SafeStringValue(maxdimlist);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     Check_Type(merge,T_FIXNUM);
+ 
+     i_fieldname = RSTRING_PTR(fieldname);
+@@ -783,13 +786,13 @@ hdfeos5_swdefdatafield(VALUE file, VALUE fieldname, VALUE dimlist, VALUE maxdiml
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     Check_Type(dimlist,T_STRING);
+-    Check_SafeStr(dimlist);
++    SafeStringValue(dimlist);
+     Check_Type(maxdimlist,T_STRING);
+-    Check_SafeStr(maxdimlist);
++    SafeStringValue(maxdimlist);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     Check_Type(merge,T_FIXNUM);
+ 
+     i_fieldname = RSTRING_PTR(fieldname);
+@@ -823,7 +826,7 @@ hdfeos5_swwritedatameta(VALUE mod, VALUE dimlist, VALUE mvalue)
+     i_swathid=he5field->swid;
+ 
+     Check_Type(dimlist,T_STRING);
+-    Check_SafeStr(dimlist);
++    SafeStringValue(dimlist);
+     Check_Type(mvalue,T_FIXNUM);
+ 
+     i_dimlist = RSTRING_PTR(dimlist);
+@@ -852,7 +855,7 @@ hdfeos5_swwritegeometa(VALUE mod, VALUE dimlist, VALUE mvalue)
+     i_swathid=he5field->swid;
+ 
+     Check_Type(dimlist,T_STRING);
+-    Check_SafeStr(dimlist);
++    SafeStringValue(dimlist);
+     Check_Type(mvalue,T_FIXNUM);
+ 
+     i_dimlist = RSTRING_PTR(dimlist);
+@@ -881,9 +884,9 @@ hdfeos5_swwriteattr(VALUE mod, VALUE attrname, VALUE numbertype, VALUE count, VA
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     count = rb_Array(count);
+ 
+     i_attrname = RSTRING_PTR(attrname);
+@@ -915,7 +918,7 @@ hdfeos5_sw_get_att(VALUE mod, VALUE attrname)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     i_attrname = RSTRING_PTR(attrname);
+ 
+     o_rtn_val = HE5_SWattrinfo(i_swathid, i_attrname, &o_ntype, &o_count);
+@@ -1163,11 +1166,11 @@ hdfeos5_swinqdatatype(VALUE mod, VALUE fieldname, VALUE attrname, VALUE group)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(group,T_STRING);
+-    Check_SafeStr(group);
++    SafeStringValue(group);
+ 
+     i_fieldname = RSTRING_PTR(fieldname);
+     i_attrname = RSTRING_PTR(attrname);
+@@ -1199,7 +1202,7 @@ hdfeos5_swnentries(VALUE mod, VALUE entrycode)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(entrycode,T_STRING);
+-    Check_SafeStr(entrycode);
++    SafeStringValue(entrycode);
+     i_entrycode = change_entrycode(RSTRING_PTR(entrycode));
+ 
+     o_count = HE5_SWnentries(i_swathid, i_entrycode, &o_strbufsize);
+@@ -1244,7 +1247,7 @@ hdfeos5_swwritefield(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALUE dat
+ {
+     char *chk_ntype;
+     Check_Type(ntype,T_STRING);
+-    Check_SafeStr(ntype);
++    SafeStringValue(ntype);
+     chk_ntype = RSTRING_PTR(ntype);
+ 
+     switch (check_numbertype(chk_ntype)){
+@@ -1295,7 +1298,7 @@ hdfeos5_swreadfield(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALUE ntyp
+ {
+     char *chk_ntype;
+     Check_Type(ntype,T_STRING);
+-    Check_SafeStr(ntype);
++    SafeStringValue(ntype);
+     chk_ntype = RSTRING_PTR(ntype);
+ 
+     switch (check_numbertype(chk_ntype)){
+@@ -1417,7 +1420,7 @@ hdfeos5_swdefboxregion(VALUE mod, VALUE cornerlon, VALUE cornerlat, VALUE mode)
+       cornerlat = rb_Array(cornerlat);
+     }
+     Check_Type(mode,T_STRING);
+-    Check_SafeStr(mode);
++    SafeStringValue(mode);
+     i_mode = change_subsetmode(RSTRING_PTR(mode));
+     i_cornerlon = hdfeos5_obj2cfloatary(cornerlon);
+     i_cornerlat = hdfeos5_obj2cfloatary(cornerlat);
+@@ -1455,7 +1458,7 @@ hdfeos5_swregionindex(VALUE mod, VALUE cornerlon, VALUE cornerlat, VALUE mode)
+       cornerlat = rb_Array(cornerlat);
+     }
+     Check_Type(mode,T_STRING);
+-    Check_SafeStr(mode);
++    SafeStringValue(mode);
+     i_mode = change_subsetmode(RSTRING_PTR(mode));
+ 
+     i_cornerlon = hdfeos5_obj2cfloatary(cornerlon);
+@@ -1494,7 +1497,7 @@ hdfeos5_swdeftimeperiod(VALUE mod, VALUE starttime, VALUE stoptime, VALUE mode)
+       stoptime = rb_funcall(stoptime, rb_intern("to_f"), 0);
+     }
+     Check_Type(mode,T_STRING);
+-    Check_SafeStr(mode);
++    SafeStringValue(mode);
+     i_mode = change_subsetmode(RSTRING_PTR(mode));
+ 
+     i_starttime = (double)NUM2DBL(starttime);
+@@ -1524,7 +1527,7 @@ hdfeos5_swextractregion(VALUE mod, VALUE regionid, VALUE externalflag)
+ 
+     Check_Type(regionid,T_FIXNUM);
+     Check_Type(externalflag,T_STRING);
+-    Check_SafeStr(externalflag);
++    SafeStringValue(externalflag);
+ 
+     i_regionid = NUM2INT(regionid);
+     i_externalflag = change_subsetmode(RSTRING_PTR(externalflag));
+@@ -1557,7 +1560,7 @@ hdfeos5_swextractperiod(VALUE mod, VALUE periodid, VALUE externalflag)
+ 
+     Check_Type(periodid,T_FIXNUM);
+     Check_Type(externalflag,T_STRING);
+-    Check_SafeStr(externalflag);
++    SafeStringValue(externalflag);
+ 
+     i_periodid = NUM2INT(periodid);
+     i_externalflag = change_subsetmode(RSTRING_PTR(externalflag));
+@@ -1600,7 +1603,7 @@ hdfeos5_swdefvrtregion(VALUE mod, VALUE regionid, VALUE vertobj, VALUE range)
+ 
+     Check_Type(regionid,T_FIXNUM);
+     Check_Type(vertobj,T_STRING);
+-    Check_SafeStr(vertobj);
++    SafeStringValue(vertobj);
+     if (TYPE(range) == T_FLOAT) {
+       range = rb_Array(range);
+     }
+@@ -1631,9 +1634,9 @@ hdfeos5_swsetfillvalue(VALUE mod, VALUE fieldname,VALUE numbertype, VALUE fillva
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     i_fieldname = RSTRING_PTR(fieldname);
+     i_numbertype = change_numbertype(RSTRING_PTR(numbertype));
+ 
+@@ -1643,7 +1646,7 @@ hdfeos5_swsetfillvalue(VALUE mod, VALUE fieldname,VALUE numbertype, VALUE fillva
+     }
+     if (TYPE(fillval) == T_STRING) {
+       Check_Type(fillval,T_STRING);
+-      Check_SafeStr(fillval);
++      SafeStringValue(fillval);
+       i_fillval = RSTRING_PTR(fillval);
+     }
+ 
+@@ -1669,7 +1672,7 @@ hdfeos5_swgetfillvalue(VALUE mod,VALUE fieldname)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     i_fieldname = RSTRING_PTR(fieldname);
+ 
+     o_fillval = (void*)malloc(HE5_BLKSIZE);
+@@ -1823,7 +1826,7 @@ hdfeos5_swgeomapinfo(VALUE mod, VALUE geodim)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(geodim,T_STRING);
+-    Check_SafeStr(geodim);
++    SafeStringValue(geodim);
+     i_geodim = RSTRING_PTR(geodim);
+ 
+     o_rtn_val = HE5_SWgeomapinfo(i_swathid, i_geodim);
+@@ -1850,9 +1853,9 @@ hdfeos5_swwritegrpattr(VALUE mod, VALUE attrname, VALUE numbertype, VALUE count,
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     count = rb_Array(count);
+ 
+     i_attrname = RSTRING_PTR(attrname);
+@@ -1884,7 +1887,7 @@ hdfeos5_sw_get_grpatt(VALUE mod, VALUE attrname)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     i_attrname = RSTRING_PTR(attrname);
+ 
+     o_rtn_val = HE5_SWgrpattrinfo(i_swathid, i_attrname, &o_ntype, &o_count);
+@@ -1940,9 +1943,9 @@ hdfeos5_swwritegeogrpattr(VALUE mod, VALUE attrname, VALUE numbertype, VALUE cou
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     count = rb_Array(count);
+     if (TYPE(datbuf) == T_FLOAT) {
+       datbuf = rb_Array(datbuf);
+@@ -1976,7 +1979,7 @@ hdfeos5_sw_get_geogrpatt(VALUE mod, VALUE attrname)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     i_attrname = RSTRING_PTR(attrname);
+ 
+     o_rtn_val = HE5_SWgeogrpattrinfo(i_swathid, i_attrname, &o_ntype, &o_count);
+@@ -2035,9 +2038,9 @@ hdfeos5_swwritelocattr(VALUE mod, VALUE attrname, VALUE numbertype, VALUE count,
+     i_swathid=he5field->swid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     count = rb_Array(count);
+ 
+     i_attrname = RSTRING_PTR(attrname);
+@@ -2070,7 +2073,7 @@ hdfeos5_swfield_get_att(VALUE mod,VALUE  attrname)
+     i_fieldname=he5field->name;
+     i_swathid=he5field->swid;
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     i_attrname = RSTRING_PTR(attrname);
+ 
+     o_rtn_val = HE5_SWlocattrinfo(i_swathid, i_fieldname, i_attrname, 
+@@ -2132,13 +2135,13 @@ hdfeos5_prdefine(VALUE mod, VALUE profilename, VALUE dimlist, VALUE maxdimlist,
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(profilename,T_STRING);
+-    Check_SafeStr(profilename);
++    SafeStringValue(profilename);
+     Check_Type(dimlist,T_STRING);
+-    Check_SafeStr(dimlist);
++    SafeStringValue(dimlist);
+     Check_Type(maxdimlist,T_STRING);
+-    Check_SafeStr(maxdimlist);
++    SafeStringValue(maxdimlist);
+     Check_Type(datatype_id,T_STRING);
+-    Check_SafeStr(datatype_id);
++    SafeStringValue(datatype_id);
+ 
+     i_profilename = RSTRING_PTR(profilename);
+     i_dimlist = RSTRING_PTR(dimlist);
+@@ -2170,7 +2173,7 @@ hdfeos5_prwrite(VALUE mod, VALUE profilename, VALUE start, VALUE stride, VALUE e
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(profilename,T_STRING);
+-    Check_SafeStr(profilename);
++    SafeStringValue(profilename);
+     start = rb_Array(start);
+     stride = rb_Array(stride);
+     edge = rb_Array(edge);
+@@ -2212,7 +2215,7 @@ hdfeos5_prread(VALUE mod, VALUE profilename, VALUE start, VALUE stride, VALUE ed
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(profilename,T_STRING);
+-    Check_SafeStr(profilename);
++    SafeStringValue(profilename);
+     start = rb_Array(start);
+     stride = rb_Array(stride);
+     edge = rb_Array(edge);
+@@ -2247,7 +2250,7 @@ hdfeos5_prreclaimspace(VALUE mod, VALUE profilename)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(profilename,T_STRING);
+-    Check_SafeStr(profilename);
++    SafeStringValue(profilename);
+     i_profilename = RSTRING_PTR(profilename);
+ 
+     o_buffer = (void*)malloc(HE5_BLKSIZE);
+@@ -2308,7 +2311,7 @@ hdfeos5_prinfo(VALUE mod, VALUE profilename)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(profilename,T_STRING);
+-    Check_SafeStr(profilename);
++    SafeStringValue(profilename);
+     i_profilename = RSTRING_PTR(profilename);
+ 
+     o_rtn_val = HE5_PRinfo(i_swathid, i_profilename, &o_rank, &o_dims, &o_maxdims, &o_ntype, o_dimlist, NULL);
+@@ -2338,9 +2341,9 @@ hdfeos5_prwritegrpattr(VALUE mod, VALUE attrname, VALUE numbertype, VALUE count,
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     count = rb_Array(count);
+     if (TYPE(datbuf) == T_FLOAT) {
+       datbuf = rb_Array(datbuf);
+@@ -2374,7 +2377,7 @@ hdfeos5_pr_get_grpatt(VALUE mod, VALUE attrname)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     i_attrname = RSTRING_PTR(attrname);
+ 
+     o_rtn_val = HE5_PRgrpattrinfo(i_swathid, i_attrname, &o_ntype, &o_count);
+@@ -2428,7 +2431,7 @@ hdfeos5_swsetalias(VALUE mod, VALUE fieldname)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     i_fieldname = RSTRING_PTR(fieldname);
+ 
+     o_rtn_val = HE5_SWsetalias(i_swathid, i_fieldname, o_aliaslist);
+@@ -2452,9 +2455,9 @@ hdfeos5_swdropalias(VALUE mod, VALUE fldgroup, VALUE aliasname)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     Check_Type(aliasname,T_STRING);
+-    Check_SafeStr(aliasname);
++    SafeStringValue(aliasname);
+ 
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+     i_aliasname = RSTRING_PTR(aliasname);
+@@ -2506,9 +2509,9 @@ hdfeos5_swaliasinfo(VALUE mod, VALUE fldgroup, VALUE aliasname)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     Check_Type(aliasname,T_STRING);
+-    Check_SafeStr(aliasname);
++    SafeStringValue(aliasname);
+ 
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+     i_aliasname = RSTRING_PTR(aliasname);
+@@ -2538,7 +2541,7 @@ hdfeos5_swgetaliaslist(VALUE mod, VALUE fldgroup)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+ 
+     o_rtn_val = HE5_SWgetaliaslist(i_swathid, i_fldgroup, o_aliaslist, &o_strbufsize);
+@@ -2563,10 +2566,10 @@ hdfeos5_swfldrename(VALUE mod, VALUE oldfieldname,VALUE newfieldname)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(oldfieldname,T_STRING);
+-    Check_SafeStr(oldfieldname);
++    SafeStringValue(oldfieldname);
+     i_oldfieldname = RSTRING_PTR(oldfieldname);
+     Check_Type(newfieldname,T_STRING);
+-    Check_SafeStr(newfieldname);
++    SafeStringValue(newfieldname);
+     i_newfieldname = RSTRING_PTR(newfieldname);
+ 
+ 
+@@ -2591,9 +2594,9 @@ hdfeos5_swmountexternal(VALUE mod, VALUE fldgroup, VALUE extfilename)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     Check_Type(extfilename,T_STRING);
+-    Check_SafeStr(extfilename);
++    SafeStringValue(extfilename);
+ 
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+     i_extfilename = RSTRING_PTR(extfilename);
+@@ -2618,7 +2621,7 @@ hdfeos5_swunmount(VALUE mod, VALUE fldgroup, VALUE fileid)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     Check_Type(fileid,T_FIXNUM);
+ 
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+@@ -2645,9 +2648,9 @@ hdfeos5_swreadexternal(VALUE mod, VALUE fldgroup, VALUE fieldname)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+     i_fieldname = RSTRING_PTR(fieldname);
+ 
+@@ -2674,7 +2677,7 @@ hdfeos5_swsetextdata(VALUE mod, VALUE filelist, VALUE offset, VALUE size)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(filelist,T_STRING);
+-    Check_SafeStr(filelist);
++    SafeStringValue(filelist);
+     if ((TYPE(offset) == T_BIGNUM) || (TYPE(offset) == T_FIXNUM)) {
+       offset = rb_Array(offset);
+     }
+@@ -2714,7 +2717,7 @@ hdfeos5_swgetextdata(VALUE mod, VALUE fieldname)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+ 
+     i_fieldname = RSTRING_PTR(fieldname);
+ 
+@@ -2744,7 +2747,7 @@ hdfeos5_swindexinfo(VALUE mod, VALUE regionid, VALUE object)
+ 
+     Check_Type(regionid,T_FIXNUM);
+     Check_Type(object,T_STRING);
+-    Check_SafeStr(object);
++    SafeStringValue(object);
+ 
+     i_regionid = NUM2INT(regionid);
+     i_object = RSTRING_PTR(object);
+@@ -2811,7 +2814,7 @@ hdfeos5_swsetfield(VALUE mod,VALUE fieldname)
+     i_swathid=he5swath->swid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     i_fieldname = RSTRING_PTR(fieldname);
+     
+     he5field = HE5SwField_init(i_fieldname, i_swathid, mod);
+diff --git a/hdfeos5za_wrap.c b/hdfeos5za_wrap.c
+index a49725f..f26a809 100644
+--- a/hdfeos5za_wrap.c
++++ b/hdfeos5za_wrap.c
+@@ -15,6 +15,9 @@
+ #ifndef RSTRING_PTR
+ #define RSTRING_PTR(s) (RSTRING(s)->ptr)
+ #endif
++#ifndef SafeStringValue
++#define SafeStringValue(s) Check_SafeStr(s)
++#endif
+ 
+ extern int   check_numbertype(char *);
+ extern int   change_numbertype(char *);
+@@ -275,7 +278,7 @@ zanentries_count(hid_t i_zaid, VALUE entrycode)
+     long o_count;
+ 
+     Check_Type(entrycode,T_STRING);
+-    Check_SafeStr(entrycode);
++    SafeStringValue(entrycode);
+     c_entrycode = RSTRING_PTR(entrycode);
+ 
+     o_count = HE5_ZAnentries(i_zaid, change_entrycode(c_entrycode), &o_strbufsize);
+@@ -291,7 +294,7 @@ zanentries_strbuf(hid_t i_zaid, VALUE entrycode)
+     long o_count;
+ 
+     Check_Type(entrycode,T_STRING);
+-    Check_SafeStr(entrycode);
++    SafeStringValue(entrycode);
+     c_entrycode = RSTRING_PTR(entrycode);
+ 
+     o_count = HE5_ZAnentries(i_zaid, change_entrycode(c_entrycode), &o_strbufsize);
+@@ -316,7 +319,7 @@ hdfeos5_zacreate(VALUE mod, VALUE zaname)
+     file=he5file->name;
+ 
+     Check_Type(zaname,T_STRING);
+-    Check_SafeStr(zaname);
++    SafeStringValue(zaname);
+     i_zaname = RSTRING_PTR(zaname);
+ 
+     zaid = HE5_ZAcreate(i_fid, i_zaname);
+@@ -342,7 +345,7 @@ hdfeos5_zaattach(VALUE mod, VALUE zaname)
+     i_fname=he5file->name;
+ 
+     Check_Type(zaname,T_STRING);
+-    Check_SafeStr(zaname);
++    SafeStringValue(zaname);
+     i_zaname = RSTRING_PTR(zaname);
+ 
+     zaid = HE5_ZAattach(i_fid, i_zaname);
+@@ -367,7 +370,7 @@ hdfeos5_zadefdim(VALUE mod, VALUE dimname, VALUE dim)
+     Data_Get_Struct(mod, struct HE5Za, he5za);
+     i_zaid=he5za->zaid;
+     Check_Type(dimname,T_STRING);
+-    Check_SafeStr(dimname);
++    SafeStringValue(dimname);
+     Check_Type(dim,T_FIXNUM);
+     i_dimname = RSTRING_PTR(dimname);
+     i_dim = NUM2LONG(dim);
+@@ -390,7 +393,7 @@ hdfeos5_zadiminfo(VALUE mod, VALUE dimname)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(dimname,T_STRING);
+-    Check_SafeStr(dimname);
++    SafeStringValue(dimname);
+     i_dimname = RSTRING_PTR(dimname);
+ 
+     o_ndim = HE5_ZAdiminfo(i_zaid, i_dimname);
+@@ -501,7 +504,7 @@ hdfeos5_zadefcomp(VALUE mod, VALUE compcode, VALUE compparm)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(compcode,T_STRING);
+-    Check_SafeStr(compcode);
++    SafeStringValue(compcode);
+     if ((TYPE(compparm) == T_BIGNUM) || (TYPE(compparm) == T_FIXNUM)) {
+       compparm = rb_Array(compparm);
+     }
+@@ -531,7 +534,7 @@ hdfeos5_zadefcomchunk(VALUE mod, VALUE compcode, VALUE compparm, VALUE rank, VAL
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(compcode,T_STRING);
+-    Check_SafeStr(compcode);
++    SafeStringValue(compcode);
+     if ((TYPE(compparm) == T_BIGNUM) || (TYPE(compparm) == T_FIXNUM)) {
+       compparm = rb_Array(compparm);
+     }
+@@ -570,13 +573,13 @@ hdfeos5_zadefine(VALUE file, VALUE fieldname, VALUE dimlist, VALUE maxdimlist, V
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     Check_Type(dimlist,T_STRING);
+-    Check_SafeStr(dimlist);
++    SafeStringValue(dimlist);
+     Check_Type(maxdimlist,T_STRING);
+-    Check_SafeStr(maxdimlist);
++    SafeStringValue(maxdimlist);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+ 
+     i_fieldname = RSTRING_PTR(fieldname);
+     i_dimlist = RSTRING_PTR(dimlist);
+@@ -608,7 +611,7 @@ hdfeos5_zawritedatameta(VALUE mod, VALUE dimlist, VALUE mvalue)
+     i_zaid=he5field->zaid;
+ 
+     Check_Type(dimlist,T_STRING);
+-    Check_SafeStr(dimlist);
++    SafeStringValue(dimlist);
+     Check_Type(mvalue,T_FIXNUM);
+ 
+     i_dimlist = RSTRING_PTR(dimlist);
+@@ -638,9 +641,9 @@ hdfeos5_zawriteattr(VALUE mod, VALUE attrname, VALUE numbertype, VALUE count, VA
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     count = rb_Array(count);
+ 
+     i_attrname = RSTRING_PTR(attrname);
+@@ -672,7 +675,7 @@ hdfeos5_za_get_att(VALUE mod, VALUE attrname)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     i_attrname = RSTRING_PTR(attrname);
+ 
+     o_rtn_val = HE5_ZAattrinfo(i_zaid, i_attrname, &o_ntype, &o_count);
+@@ -809,11 +812,11 @@ hdfeos5_zainqdatatype(VALUE mod, VALUE fieldname, VALUE attrname, VALUE group)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(group,T_STRING);
+-    Check_SafeStr(group);
++    SafeStringValue(group);
+ 
+     i_fieldname = RSTRING_PTR(fieldname);
+     i_attrname = RSTRING_PTR(attrname);
+@@ -845,7 +848,7 @@ hdfeos5_zachunkinfo(VALUE mod, VALUE fldname)
+     Data_Get_Struct(mod, struct HE5Za, he5za);
+     i_zaid=he5za->zaid;
+     Check_Type(fldname,T_STRING);
+-    Check_SafeStr(fldname);
++    SafeStringValue(fldname);
+     i_fldname = RSTRING_PTR(fldname);
+ 
+     o_rtn_val = HE5_ZAchunkinfo(i_zaid, i_fldname, &o_chunk_rank, NULL);
+@@ -876,7 +879,7 @@ hdfeos5_zanentries(VALUE mod, VALUE entrycode)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(entrycode,T_STRING);
+-    Check_SafeStr(entrycode);
++    SafeStringValue(entrycode);
+     i_entrycode = change_entrycode(RSTRING_PTR(entrycode));
+ 
+     o_count = HE5_ZAnentries(i_zaid, i_entrycode, &o_strbufsize);
+@@ -921,7 +924,7 @@ hdfeos5_zawrite(VALUE mod, VALUE start, VALUE stride, VALUE count, VALUE data, V
+ {
+     char *chk_ntype;
+     Check_Type(ntype,T_STRING);
+-    Check_SafeStr(ntype);
++    SafeStringValue(ntype);
+     chk_ntype = RSTRING_PTR(ntype);
+ 
+     switch (check_numbertype(chk_ntype)){
+@@ -972,7 +975,7 @@ hdfeos5_zaread(VALUE mod, VALUE start, VALUE stride, VALUE edge, VALUE ntype)
+ {
+     char *chk_ntype;
+     Check_Type(ntype,T_STRING);
+-    Check_SafeStr(ntype);
++    SafeStringValue(ntype);
+     chk_ntype = RSTRING_PTR(ntype);
+ 
+     switch (check_numbertype(chk_ntype)){
+@@ -1088,9 +1091,9 @@ hdfeos5_zasetfillvalue(VALUE mod, VALUE fieldname,VALUE numbertype, VALUE fillva
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     i_fieldname = RSTRING_PTR(fieldname);
+     i_numbertype = change_numbertype(RSTRING_PTR(numbertype));
+ 
+@@ -1100,7 +1103,7 @@ hdfeos5_zasetfillvalue(VALUE mod, VALUE fieldname,VALUE numbertype, VALUE fillva
+     }
+     if (TYPE(fillval) == T_STRING) {
+       Check_Type(fillval,T_STRING);
+-      Check_SafeStr(fillval);
++      SafeStringValue(fillval);
+       i_fillval = RSTRING_PTR(fillval);
+     }
+ 
+@@ -1126,7 +1129,7 @@ hdfeos5_zagetfillvalue(VALUE mod,VALUE fieldname)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     i_fieldname = RSTRING_PTR(fieldname);
+ 
+     o_fillval = (void*)malloc(HE5_BLKSIZE);
+@@ -1155,9 +1158,9 @@ hdfeos5_zawritegrpattr(VALUE mod, VALUE attrname, VALUE numbertype, VALUE count,
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     count = rb_Array(count);
+ 
+     i_attrname = RSTRING_PTR(attrname);
+@@ -1189,7 +1192,7 @@ hdfeos5_za_get_grpatt(VALUE mod, VALUE attrname)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     i_attrname = RSTRING_PTR(attrname);
+ 
+     o_rtn_val = HE5_ZAgrpattrinfo(i_zaid, i_attrname, &o_ntype, &o_count);
+@@ -1248,9 +1251,9 @@ hdfeos5_zawritelocattr(VALUE mod, VALUE attrname, VALUE numbertype, VALUE count,
+     i_zaid=he5field->zaid;
+ 
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     Check_Type(numbertype,T_STRING);
+-    Check_SafeStr(numbertype);
++    SafeStringValue(numbertype);
+     count = rb_Array(count);
+ 
+     i_attrname = RSTRING_PTR(attrname);
+@@ -1284,7 +1287,7 @@ hdfeos5_zafield_get_att(VALUE mod,VALUE  attrname)
+     i_fieldname=he5field->name;
+     i_zaid=he5field->zaid;
+     Check_Type(attrname,T_STRING);
+-    Check_SafeStr(attrname);
++    SafeStringValue(attrname);
+     i_attrname = RSTRING_PTR(attrname);
+ 
+     o_rtn_val = HE5_ZAlocattrinfo(i_zaid, i_fieldname, i_attrname, 
+@@ -1344,7 +1347,7 @@ hdfeos5_zasetalias(VALUE mod, VALUE fieldname)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     i_fieldname = RSTRING_PTR(fieldname);
+ 
+     o_rtn_val = HE5_ZAsetalias(i_zaid, i_fieldname, o_aliaslist);
+@@ -1368,9 +1371,9 @@ hdfeos5_zadropalias(VALUE mod, VALUE fldgroup, VALUE aliasname)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     Check_Type(aliasname,T_STRING);
+-    Check_SafeStr(aliasname);
++    SafeStringValue(aliasname);
+ 
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+     i_aliasname = RSTRING_PTR(aliasname);
+@@ -1423,9 +1426,9 @@ hdfeos5_zaaliasinfo(VALUE mod, VALUE fldgroup, VALUE aliasname)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     Check_Type(aliasname,T_STRING);
+-    Check_SafeStr(aliasname);
++    SafeStringValue(aliasname);
+ 
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+     i_aliasname = RSTRING_PTR(aliasname);
+@@ -1456,7 +1459,7 @@ hdfeos5_zagetaliaslist(VALUE mod, VALUE fldgroup)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+ 
+     o_rtn_val = HE5_ZAgetaliaslist(i_zaid, i_fldgroup, o_aliaslist, &o_strbufsize);
+@@ -1481,10 +1484,10 @@ hdfeos5_zafldrename(VALUE mod, VALUE oldfieldname,VALUE newfieldname)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(oldfieldname,T_STRING);
+-    Check_SafeStr(oldfieldname);
++    SafeStringValue(oldfieldname);
+     i_oldfieldname = RSTRING_PTR(oldfieldname);
+     Check_Type(newfieldname,T_STRING);
+-    Check_SafeStr(newfieldname);
++    SafeStringValue(newfieldname);
+     i_newfieldname = RSTRING_PTR(newfieldname);
+ 
+ 
+@@ -1509,9 +1512,9 @@ hdfeos5_zamountexternal(VALUE mod, VALUE fldgroup, VALUE extfilename)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     Check_Type(extfilename,T_STRING);
+-    Check_SafeStr(extfilename);
++    SafeStringValue(extfilename);
+ 
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+     i_extfilename = RSTRING_PTR(extfilename);
+@@ -1536,7 +1539,7 @@ hdfeos5_zaunmount(VALUE mod, VALUE fldgroup, VALUE fileid)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     Check_Type(fileid,T_FIXNUM);
+ 
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+@@ -1563,9 +1566,9 @@ hdfeos5_zareadexternal(VALUE mod, VALUE fldgroup, VALUE fieldname)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(fldgroup,T_STRING);
+-    Check_SafeStr(fldgroup);
++    SafeStringValue(fldgroup);
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     i_fldgroup = change_groupcode(RSTRING_PTR(fldgroup));
+     i_fieldname = RSTRING_PTR(fieldname);
+ 
+@@ -1592,7 +1595,7 @@ hdfeos5_zasetextdata(VALUE mod, VALUE filelist, VALUE offset, VALUE size)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(filelist,T_STRING);
+-    Check_SafeStr(filelist);
++    SafeStringValue(filelist);
+     if ((TYPE(offset) == T_BIGNUM) || (TYPE(offset) == T_FIXNUM)) {
+       offset = rb_Array(offset);
+     }
+@@ -1632,7 +1635,7 @@ hdfeos5_zagetextdata(VALUE mod, VALUE fieldname)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+ 
+     i_fieldname = RSTRING_PTR(fieldname);
+ 
+@@ -1701,7 +1704,7 @@ hdfeos5_zasetfield(VALUE mod,VALUE fieldname)
+     i_zaid=he5za->zaid;
+ 
+     Check_Type(fieldname,T_STRING);
+-    Check_SafeStr(fieldname);
++    SafeStringValue(fieldname);
+     i_fieldname = RSTRING_PTR(fieldname);
+     
+     he5field = HE5ZaField_init(i_fieldname, i_zaid, mod);
+-- 
+1.7.2.3
+
diff --git a/debian/patches/0004-update-ChangeLog.patch b/debian/patches/0004-update-ChangeLog.patch
new file mode 100644
index 0000000..ef52163
--- /dev/null
+++ b/debian/patches/0004-update-ChangeLog.patch
@@ -0,0 +1,36 @@
+From 2dc89d15f057c4e64d812964defca138eca48ffe Mon Sep 17 00:00:00 2001
+From: koshiro <koshiro>
+Date: Tue, 28 Dec 2010 01:44:05 +0000
+Subject: [PATCH 4/4] * update ChangeLog
+
+---
+ ChangeLog |   13 +++++++++++++
+ 1 files changed, 13 insertions(+), 0 deletions(-)
+
+diff --git a/ChangeLog b/ChangeLog
+index 16dc8be..273579f 100644
+--- a/ChangeLog
++++ b/ChangeLog
+@@ -6,6 +6,19 @@ This file is generated automatically by
+  This script is available from  http://www.red-bean.com/cvs2cl/
+ 
+ 
++2010-12-28 Tuesday 10:36  koshiro
++
++	* hdfeos5_chkdatatype.c (1.5), hdfeos5_obj2cary.c (1.5),
++	  hdfeos5gd_wrap.c (1.6), hdfeos5main_wrap.c (1.4),
++	  hdfeos5pt_wrap.c (1.4), hdfeos5sw_wrap.c (1.13), hdfeos5za_wrap.c
++	  (1.7):
++	  * Ruby 1.9.2 compatibility
++
++2010-04-05 Monday 15:58  koshiro
++
++	* ChangeLog (1.9):
++	  * update ChangeLog
++
+ 2010-04-05 Monday 15:55  koshiro
+ 
+ 	* hdfeos5_chkdatatype.c (1.4), hdfeos5_obj2cary.c (1.4),
+-- 
+1.7.2.3
+
diff --git a/debian/patches/AddlibgctpEntry b/debian/patches/AddlibgctpEntry
deleted file mode 100644
index d1a4b14..0000000
--- a/debian/patches/AddlibgctpEntry
+++ /dev/null
@@ -1,31 +0,0 @@
---- ruby-hdfeos5.orig/extconf.rb
-+++ ruby-hdfeos5/extconf.rb
-@@ -1,6 +1,6 @@
- require "mkmf"
- 
--dir_config('narray',$sitearchdir,$sitearchdir)
-+dir_config('narray',$archdir,$archdir)
- 
- if ( ! ( have_header("narray.h") && have_header("narray_config.h") ) ) then
- print <<EOS
-@@ -32,9 +32,18 @@
-   exit(-1)
- end
- 
--dir_config('hdfeos5',$sitearchdir,$sitearchdir)
-+dir_config('gctp', $archdir, $archdir)
-+if ( ! have_library("gctp") ) then
-+  print <<-EOS
-+  ** configure error **
-+  debian specific!
-+  EOS
-+  exit(-1)
-+end
-+
-+dir_config('hdfeos5',$archdir,$archdir)
- 
--if ( ! ( have_header("HE5_HdfEosDef.h") && have_library("Gctp") && have_library("he5_hdfeos")  ) )then
-+if ( ! ( have_header("HE5_HdfEosDef.h") && have_library("gctp") && have_library("he5_hdfeos")  ) )then
-   print <<-EOS
-     ** configure error **  
-        Header hdfeos5.h or the compiled hdfeos5 library is not found. 
diff --git a/debian/patches/ChangeTestPATH b/debian/patches/add-test-target.patch
similarity index 85%
rename from debian/patches/ChangeTestPATH
rename to debian/patches/add-test-target.patch
index a5a0d45..01d7e13 100644
--- a/debian/patches/ChangeTestPATH
+++ b/debian/patches/add-test-target.patch
@@ -1,12 +1,12 @@
 --- ruby-hdfeos5.orig/extconf.rb
 +++ ruby-hdfeos5/extconf.rb
-@@ -77,8 +77,12 @@
+@@ -59,8 +59,12 @@
     when /^all:/
        newmkfl.puts(line)
-       newmkfl.puts("")         
+       newmkfl.puts("")
 -      newmkfl.puts("test: all")            # insert the "test" target
--      newmkfl.puts("\t\t at cd test && ruby test.rb && echo 'test did not fail :-p (please ignore the warnings)' && cd ..") 
-+      newmkfl.puts("\t\t-@( [ ! -d lib/numru ] && ( mkdir -p lib/numru && cd lib/numru && ln -s ../../hdfeos5raw.so hdfeos5raw.so && ln -s ../hdfeos5.rb hdfeos5.rb )) ") 
+-      newmkfl.puts("\t\t at cd test && ruby test.rb && echo 'test did not fail :-p (please ignore the warnings)' && cd ..")
++      newmkfl.puts("\t\t-@( [ ! -d lib/numru ] && ( mkdir -p lib/numru && cd lib/numru && ln -s ../../hdfeos5raw.so hdfeos5raw.so && ln -s ../hdfeos5.rb hdfeos5.rb )) ")
 +      newmkfl.puts("\t\tcd test && /usr/bin/ruby$(CDBS_RUBY_VER) -I../lib test_gd.rb 1>/dev/null && cd ..")
 +      newmkfl.puts("\t\tcd test && /usr/bin/ruby$(CDBS_RUBY_VER) -I../lib test_pt.rb 1>/dev/null && cd ..")
 +      newmkfl.puts("\t\tcd test && /usr/bin/ruby$(CDBS_RUBY_VER) -I../lib test_sw.rb 1>/dev/null && cd ..")
diff --git a/debian/patches/fix-extconf-rb.patch b/debian/patches/fix-extconf-rb.patch
new file mode 100644
index 0000000..59b10a7
--- /dev/null
+++ b/debian/patches/fix-extconf-rb.patch
@@ -0,0 +1,54 @@
+--- ruby-hdfeos5.orig/extconf.rb
++++ ruby-hdfeos5/extconf.rb
+@@ -1,11 +1,11 @@
+ require "mkmf"
+ 
+-dir_config('narray',$sitearchdir,$sitearchdir)
++dir_config('narray',$archdir,$archdir)
+ 
+ if ( ! ( have_header("narray.h") && have_header("narray_config.h") ) ) then
+ print <<EOS
+-** configure error **  
+-   Header narray.h or narray_config.h is not found. If you have these files in 
++** configure error **
++   Header narray.h or narray_config.h is not found. If you have these files in
+    /narraydir/include, try the following:
+ 
+    % ruby extconf.rb --with-narray-include=/narraydir/include
+@@ -14,12 +14,21 @@
+    exit(-1)
+ end
+ 
+-dir_config('hdfeos5',$sitearchdir,$sitearchdir)
++dir_config('gctp', $archdir, $archdir)
++if ( ! have_library("gctp") ) then
++  print <<-EOS
++  ** configure error **
++  debian specific!
++  EOS
++  exit(-1)
++end
++
++dir_config('hdfeos5',$archdir,$archdir)
+ 
+ if ( ! ( have_header("hdf5.h") && have_header("HE5_HdfEosDef.h") && have_library("he5_hdfeos") && have_library("hdf5")  ) )then
+   print <<-EOS
+-    ** configure error **  
+-       Header hdfeos5.h or the compiled hdfeos5 library is not found. 
++    ** configure error **
++       Header hdfeos5.h or the compiled hdfeos5 library is not found.
+        If you have the library installed under /hdfeos5dir (that is, hdfeos5.h is
+        in /hdfeos5dir/include and the library in /hdfeos5dir/lib/),
+        try the following:
+@@ -49,9 +58,9 @@
+       newmkfl.puts("\t\t@$(RM) *.he5  Makefile.orig")
+    when /^all:/
+       newmkfl.puts(line)
+-      newmkfl.puts("")         
++      newmkfl.puts("")
+       newmkfl.puts("test: all")            # insert the "test" target
+-      newmkfl.puts("\t\t at cd test && ruby test.rb && echo 'test did not fail :-p (please ignore the warnings)' && cd ..") 
++      newmkfl.puts("\t\t at cd test && ruby test.rb && echo 'test did not fail :-p (please ignore the warnings)' && cd ..")
+    else
+       newmkfl.puts(line)
+    end
diff --git a/debian/patches/series b/debian/patches/series
index 396f7ac..b229fc4 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,6 @@
-CVSupdate
-AddlibgctpEntry
-ChangeTestPATH
+0001-Ruby-1.9-compatibility.patch
+0002-update-ChangeLog.patch
+0003-Ruby-1.9.2-compatibility.patch
+0004-update-ChangeLog.patch
+fix-extconf-rb.patch
+add-test-target.patch

-- 
Ruby interface of HDF-EOS5 library



More information about the Pkg-grass-devel mailing list