summaryrefslogtreecommitdiff
path: root/ext/dl
AgeCommit message (Collapse)Author
2010-02-16* ext/dl/method.c: Adding DL::Method as a superclass for DL::Functiontenderlove
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26677 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-15* ext/dl/function.c: using ULONG2NUM to fix tests on i686.tenderlove
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-03* ext/dl/{closure,function}.c: removed C99 features and warnings.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26548 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-03Wed Feb 3 10:12:09 2010 Aaron Patterson <tenderlove@ruby-lang.org>tenderlove
* ext/dl/function.c: DL::Function now uses libffi * ext/dl/cfunc.c (rb_dl_set_last_error): set to non static so errors can be exposed. * ext/dl/closure.c: DL::Closure will now be used in place of ext/dl/callback/*. * ext/dl/dl.c: legacy callbacks removed in favor of libffi * ext/dl/dl_converions.(c,h): used for converting ruby types to FFI types. * ext/dl/callback/*: replaced by libffi callbacks. * ext/dl/lib/dl/callback.rb: Converting internal callbacks to use DL::Closure * ext/dl/lib/dl/closure.rb: Ruby parts of the new DL::Closure object * ext/dl/lib/dl/import.rb: More conversion to use DL::Closure object * ext/dl/lib/dl/value.rb (ruby2ffi): adding private method for DL::CPtr to ffi value conversion. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26545 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-12-04* ext/dl/cptr.c (to_int): DL::CPtr supports to_inttenderlove
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25996 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-12* ext/dl/cptr.c (rb_dlptr_s_to_ptr): when wrapping a pointer it shouldtenderlove
keep a reference to the object it's wrapping * test/dl/test_func.rb use standard test methods git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25742 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-08* ext/dl/cfunc.c (**) updating documentationtenderlove
* test/dl/test_cfunc.rb (test_ptr=, test_ptr) testing the pointer accessor methods on CFunc git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25686 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-07* ext/dl/cptr.c (rb_dlptr_inspect): making inspect consistent acrosstenderlove
platforms * test/dl/test_cptr.rb (test_inspect): testing inspect git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25684 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-06* ext/dl/cfunc.c (rb_dlcfunc_initialize): cleaning up C macrostenderlove
* ext/dl/cfunc.c (**): adding documentation * test/dl/test_cfunc.rb (test_set_calltype) testing calltype git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25679 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-06* ext/dl/cptr.c (rb_dlptr_s_malloc, rb_dlptr_initialize): addingtenderlove
documentation * test/dl/test_cptr.rb (**): testing that malloc works when passed free functions git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-06* ext/dl/cptr.c (rb_dlptr_to_str, rb_dlptr_to_s) adding documentationtenderlove
* test/dl/test_cptr.rb (test_to_str, test_to_s) testing the stringification of DL::Ptr git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25677 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-06* ext/dl/cptr.c (rb_dlptr_inspect, rb_dlptr_plus, rb_dlptr_minus)tenderlove
documenting +, -, inspect * text/dl/test_cptr.rb (test_minus, test_plus, test_inspect) testing minus, plus, and inspect git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25675 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-03* test/dl/test_cptr.rb (test_to_ptr*): testing DL::CPtr#to_ptrtenderlove
* ext/dl/cptr.c (rb_dlptr_free_set, rb_dlptr_free_get, rb_dlptr_s_to_ptr): adding documentation, fixing indentation git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-03* ext/dl/cptr.c (rb_dlptr_eql, rb_dlptr_cmp): DL::CPtr#== and DL::CPtr#<=>tenderlove
should not raise an exception when compared to a different object. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25634 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-02* ext/dl/win32/lib/win32/registry.rb: update rdoc. [ruby-core:26022]naruse
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25626 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-01* ext/dl/cptr.c (rb_dlptr_ptr, rb_dlptr_ref) adding documentationtenderlove
* test/dl/test_cptr.rb (test_ref_ptr) testing CPtr#ref and CPtr#ptr git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-01* ext/dl/cptr.c (rb_dlptr_to_value) added documentationtenderlove
* test/dl/test_cptr.rb (test_to_value) testing DL::CPtr#to_value git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25607 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-01* ext/dl/cptr.c (rb_dlptr_size) splitting function to reduce complexitytenderlove
* ext/dl/cptr.c (rb_dlptr_null_p, rb_dlptr_aref, rb_dlptr_aset) adding documentation * ext/dl/dl.c (rb_dl_free) adding documentation * test/dl/test_cptr.rb (test_null?, test_size, test_size=, test_aref_aset) Improving test coverage * test/dl/test_dl2.rb (test_free_secure) improving test coverage git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25606 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-01* test/dl/test_dl2.rb (**) testing malloc and realloctenderlove
* ext/dl/dl.c (**) adding documentation git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-25* ext/dl/handle.c (dlhandle_sym): fixed an invalid local variablenobu
declaration. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25467 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-25* ext/dl/handle.c (rb_dlhandle_close): fixed an invalid localnobu
variable declaration. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-25* ext/dl/handle.c (**) adding documentationtenderlove
* test/dl/test_handle.rb (test_NEXT) testing the NEXT handle git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25463 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-25* ext/dl/handle.c (rb_dlhandle_close_enabled_p) testing that handles cantenderlove
be enabled and disabled for closure on GC. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25462 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-25* ext/dl/handle.c (**) adding documentationtenderlove
* test/dl/test_handle.rb (**) testing to_i and initialize git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25461 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-25* ext/dl/handle.c (rb_dlhandle_sym) refactoring rb_secure(2)tenderlove
* test/dl/test_handle.rb (**) testing sym behavior git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25460 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-25* ext/dl/handle.c (rb_dlhandle_sym) removing unnecessary code. Addingtenderlove
documentation and tests for current functionality. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-24* ext/dl/handle.c (rb_dlhandle_close) check return value of dlclose()tenderlove
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-23* ext/ext/dl/handle.c (rb_dlhandle_initialize) added rb_secure(2)tenderlove
[ruby-core:25762] * ext/dl/dl.c (rb_dl_dlopen) removed rb_secure(2) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-12* configure.in (GCC): subst for GCC depending extension libraries.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24861 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-09* ext/dl/cfunc.c (dlcfunc_data_type): typed.nobu
* ext/dl/cptr.c (dlptr_data_type): ditto. * ext/dl/handle.c (dlhandle_data_type): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-23* ext/dl/handle.c (rb_dlhandle_s_sym): added a method to accessnobu
using RTLD_NEXT. [ruby-dev:38152] * ext/dl/handle.c (Init_dlhandle): added constants DEFAULT and NEXT which correspond to RTLD_DEFAULT and RTLD_NEXT. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-23* ext/dl/lib/dl/cparser.rb (DL::CParser#parse_struct_signature):nobu
splitting with regexp source string is obsolete. a patch from Minwoo Lee at [ruby-core:23494]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-23* ext/dl/cptr.c (rb_dlptr_cmp): return signed value, and restrictnobu
to Fixnum. [ruby-dev:38533] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23549 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-16* ext/dl/lib/dl/callback.rb (DL#remove_callback_internal): ignorenobu
unbound function. [ruby-dev:38474] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-10* ext/dl/lib/dl/func.rb (DL::Function#bound?): returns if alreadynobu
bound to a block. * ext/dl/lib/dl/value.rb (DL::ValueUtil#wrap_arg): block must be given if arg is not bound. [ruby-dev:38404] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-10* ext/dl/cfunc.c (rb_dlcfunc_instance_p): new function to check ifnobu
the argument is an instance of DL::CFunc. * ext/dl/cptr.c (rb_dlptr_initialize, rb_dlptr_s_malloc): checks if DL::CFunc. [ruby-dev:38403]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23385 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-10* ext/dl/cptr.c: consistent indentation.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-10* ext/dl/lib/dl/cparser.rb (DL::CParser#parse_signature): stripsnobu
spaces. based on a patch from Takashi Tamura in [ruby-dev:38398]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-21* ext/dl: updated svn:ignore.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-17* win32/Makefile.sub (config.h): added RUBY_COREDLL.nobu
* ext/dl/handle.c (rb_dlhandle_initialize): returns msvcrt if libc or RUBY_COREDLL is given. [ruby-core:22828] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22986 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-17* ext/dl: made indent style insistent.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-14* common.mk (srcs-ext): creates ext/dl/callback/callback.c also.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-11* ext/dl/handle.c (rb_dlhandle_sym): RTLD_NEXT is not for symbolnobu
name. [ruby-dev:38150] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-11 * ext/dl/win32/lib/Win32API.rb: call by :stdcall as default.usa
[ruby-core:22826] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-11* ext/dl/handle.c (rb_dlhandle_sym): moved conditinally used variable.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-11* ext/dl/handle.c (rb_dlhandle_sym): fixed heap corruption.nobu
[ruby-core:22822] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-10* ext/dl/callback/mkcallback.rb (DLTYPE[FLOAT]): cast to suppressnobu
warnings. [ruby-core:22792] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22875 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-09* ext/dl/callback/depend: fix for parallel build.nobu
* ext/dl/callback/extconf.rb: callback.h is no longer created. * ext/dl/callback/mkcallback.rb: creates main source first. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22863 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-09* ext/dl/callback/extconf.rb ($distcleanfiles): added callback.c.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22862 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-09* ext/dl/dl.c (Init_dl): protoized.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e