From f557b57e67ff2cfb56de402c47341266f3e4e89d Mon Sep 17 00:00:00 2001 From: yugui Date: Sat, 31 Oct 2009 13:05:11 +0000 Subject: merges r24828 from trunk into ruby_1_9_1. -- * test/dl/test_cptr.rb (test_free=): test SEGV at first. [ruby-dev:39269] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@25594 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/dl/test_cptr.rb | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'test') 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 -- cgit v1.2.3