diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | test/dl/test_cptr.rb | 15 | ||||
-rw-r--r-- | version.h | 2 |
3 files changed, 21 insertions, 1 deletions
@@ -1,3 +1,8 @@ +Thu Sep 10 21:22:01 2009 Tanaka Akira <akr@fsij.org> + + * test/dl/test_cptr.rb (test_free=): test SEGV at first. + [ruby-dev:39269] + Tue Mar 3 15:05:19 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> * ext/dl/lib/dl/value.rb (DL::ValueUtil#wrap_arg): NULL for nil. diff --git a/test/dl/test_cptr.rb b/test/dl/test_cptr.rb index 2d6a08e1c5..c0d080906a 100644 --- a/test/dl/test_cptr.rb +++ b/test/dl/test_cptr.rb @@ -1,4 +1,5 @@ require_relative 'test_base' +require_relative '../ruby/envutil' module DL class TestCPtr < TestBase @@ -8,6 +9,20 @@ module DL end def test_free= + assert_normal_exit(<<-"End", '[ruby-dev:39269]') + require 'dl + DL::LIBC_SO = #{LIBC_SO.dump} + DL::LIBM_SO = #{LIBM_SO.dump} + include DL + @libc = dlopen(LIBC_SO) + @libm = dlopen(LIBM_SO) + free = CFunc.new(@libc['free'], TYPE_VOID, 'free') + ptr = CPtr.malloc(4) + ptr.free = free + free.ptr + ptr.free.ptr + End + free = CFunc.new(@libc['free'], TYPE_VOID, 'free') ptr = CPtr.malloc(4) ptr.free = free @@ -1,5 +1,5 @@ #define RUBY_VERSION "1.9.1" -#define RUBY_PATCHLEVEL 319 +#define RUBY_PATCHLEVEL 320 #define RUBY_VERSION_MAJOR 1 #define RUBY_VERSION_MINOR 9 #define RUBY_VERSION_TEENY 1 |