aboutsummaryrefslogtreecommitdiffstats
path: root/ext/win32ole/win32ole.c
Commit message (Collapse)AuthorAgeFilesLines
* win32ole.c: fix symbol conditionnobu2015-09-211-1/+1
| | | | | | | * ext/win32ole/win32ole.c (fole_missing): fix symbol condition, rb_check_symbol returns Qnil when the symbol is not interned. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32ole.c: inadvertent symbol creationnobu2015-09-211-8/+10
| | | | | | | * ext/win32ole/win32ole.c (GetIDsOfNames, fole_missing): avoid inadvertent symbol creation. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32ole.c: refactornobu2015-09-211-21/+25
| | | | | | * ext/win32ole/win32ole.c (ole_wc2mb): refactor. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32ole.c: make ole_mb2wc more genericnobu2015-09-211-34/+15
| | | | | | | | * ext/win32ole/win32ole.c (ole_vstr2wc): use ole_mb2wc. * ext/win32ole/win32ole.c (ole_mb2wc): parametrize code page. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: fix a typo. Patch by @davydovantonhsbt2015-06-041-1/+1
| | | | | | | | [fix GH-923] * include/ruby/st.h: ditto. * include/ruby/util.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50765 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32ole.c: wrapper object before allocnobu2015-05-281-2/+4
| | | | | | | * ext/win32ole/win32ole.c (Init_win32ole): make wrapper object before making st_table. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32ole.c: use rb_sym2strnobu2015-04-141-3/+3
| | | | | | | | | | | * ext/win32ole/win32ole.c: use rb_sym2str when the result strings will not be modified. * ext/win32ole/win32ole_event.c: ditto. * ext/win32ole/win32ole_record.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50311 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c (Init_win32ole): should not use atexit tosuke2015-02-041-25/+12
| | | | | | | free allocated hash table to avoid error on Cygwin. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c (ole_invoke): avoid SEGV when VT_RECORDsuke2015-01-181-0/+4
| | | | | | | variable is passed by reference. [ruby-dev:48803] [Bug #10697] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49315 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* uninitialized variablenobu2014-12-261-4/+6
| | | | | | | | | | | * process.c (rb_spawn_process): get rid of usage of uninitialized variable. reported by Denis Denisov <denji0k AT gmail.com>. * regexec.c (match_at): ditto. * ext/win32ole/win32ole.c (ole_wc2mb_alloc, ole_vstr2wc, ole_mb2wc): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49025 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: use typed data for com_hash.suke2014-12-021-2/+32
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: use typed data for WIN32OLE.suke2014-12-011-39/+60
| | | | | | | | | * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_event.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48665 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/win32ole/win32ole.c (ole_val2variant, ole_invoke): refactoring.suke2014-10-251-6/+2
| | | | | | | | | | | | use ole_variant2variant to convert WIN32OLE_VARIANT object to VARIANT object. ext/win32ole/win32ole_variant.c: refactoring. add ole_variant2variant. ext/win32ole/win32ole_variant.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: [DOC] Fix typo in :nodoc: reported byzzak2014-10-041-2/+2
| | | | | | | | | @windwiny to [Fix GH-705] https://github.com/ruby/ruby/pull/705 * ext/pty/pty.c: ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* protoize no-arguments functionsnobu2014-09-301-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/win32ole/win32ole.c (rbtime2vtdate, vtdate2rbtime): fixsuke2014-09-211-8/+15
| | | | | | | | | | | | the bug in conversion of milliseconds. [Bug #10258] test/win32ole/test_win32ole_variant.rb (test_conversion_dbl2date_with_msec, test_conversion_time2date_with_msec): use assert_in_delta instead of assert_equal to treat an acceptable error range. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole_event.c(ev_advise, ole_event_free,suke2014-09-131-1/+1
| | | | | | | | | fev_s_allocate, fev_unadvise): avoid segmentation fault when COM server freed before calling Unadvise from WIN32OLE_EVENT object. * ext/win32ole/win32ole.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole_variant.c (ole_val2variant_err,suke2014-09-061-1/+1
| | | | | | | | | | | | ole_val2variantdata, Init_win32ole_variant): support VT_ERROR variant with error code. add WIN32OLE_VARIANT::NoParam. * test/win32ole/test_win32ole_variant.rb(test_c_noparam, test_vt_error_noparam): ditto. * ext/win32ole/win32ole.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c (rbtime2vtdate): try to convert millisecondsuke2014-09-011-2/+14
| | | | | | | | | | of Time object to millisecond of VT_DATE VARIANT. * test/win32ole/test_win32ole_variant.rb (test_conversion_time2date_with_msec): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47343 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c (vtdate2rbtime): try to convert millisecondsuke2014-08-271-5/+18
| | | | | | | | | | of VT_DATE VARIANT to nsec of Time object. * test/win32ole/test_win32ole_variant.rb (test_conversion_dbl2date_with_msec): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47297 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c(fole_s_connect, fole_initialize): raise asuke2014-08-251-9/+9
| | | | | | | | | | | security error with the tainted string object. * ext/win32ole/win32ole_event.c(ev_advise): ditto. * test/win32ole/test_win32ole.rb(test_s_new_exc_svr_tainted, test_s_new_exc_host_tainted): ditto. * test/win32ole/test_win32ole_event.rb(test_s_new_exc_tainted): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47274 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* win32ole.c: check overflownobu2014-08-191-1/+1
| | | | | | | * ext/win32ole/win32ole.c (ole_invoke): check integer overflow on win64 platforms. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c (ole_invoke): use RHASH_SIZE instead ofsuke2014-08-171-1/+1
| | | | | | | | calling Hash#length method. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47207 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: seperate WIN32OLE_EVENT src fromsuke2014-08-151-1265/+4
| | | | | | | | | | | win32ole.c. * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_event.c: ditto. * ext/win32ole/win32ole_event.h: ditto. * ext/win32ole/depend: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: seperate WIN32OLE_RECORD src fromsuke2014-08-131-572/+3
| | | | | | | | | | | win32ole.c * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_record.c: ditto. * ext/win32ole/win32ole_record.h: ditto. * ext/win32ole/depend: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47174 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: seperate WIN32OLE_VARIANT src fromsuke2014-08-131-758/+78
| | | | | | | | | | | win32ole.c. * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_variant.c: ditto. * ext/win32ole/win32ole_variant.c: ditto. * ext/win32ole/depend: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: remove unused variable.suke2014-08-131-1/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47168 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c(ole_search_handler_method, rescue_callback,suke2014-08-131-5/+5
| | | | | | | | | | | | folerecord_inspect): use PRIsVALUE in rb_sprintf. * ext/win32ole/win32ole_param.c(foleparam_inspect): ditto. * ext/win32ole/win32ole_variable.c(folevariable_inspect): use PRIsVALUE in rb_sprintf, use rb_inspect. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47167 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: seperate WIN32OLE_PARAM src from win32ole.csuke2014-08-121-411/+2
| | | | | | | | | | * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_param.c: ditto. * ext/win32ole/win32ole_param.h: ditto. * ext/win32ole/depend: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47157 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: refactoring. move some methods suke2014-08-121-56/+2
| | | | | | | | | | | | into win32ole_type.c / win32ole_method.c * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_method.c: ditto. * ext/win32ole/win32ole_method.h: ditto. * ext/win32ole/win32ole_type.h: ditto. * ext/win32ole/win32ole_type.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: refactoring. movesuke2014-08-121-16/+0
| | | | | | | | | | ole_typelib_from_itypeinfo into win32ole_typelib.c. * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_typelib.h: ditto. * ext/win32ole/win32ole_typelib.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47154 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c (ole_create_dcom): use the convertedsuke2014-08-121-6/+4
| | | | | | | | result if the argument can be converted to a string, to get rid of invalid access. Thanks to nobu. [ruby-dev:48467] [Bug #10127] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: seperate WIN32OLE_METHOD src fromsuke2014-08-111-899/+16
| | | | | | | | | | | win32ole.c. * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_method.c: ditto. * ext/win32ole/win32ole_method.h: ditto. * ext/win32ole/depend: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47145 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: seperate WIN32OLE_VARIABLE src fromsuke2014-08-111-368/+3
| | | | | | | | | | | win32ole.c * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_variable.c: ditto. * ext/win32ole/win32ole_variable.h: ditto. * ext/win32ole/depend: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: separate WIN32OLE_TYPE src from win32ole.c.suke2014-08-081-905/+22
| | | | | | | | | | * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_type.c: ditto. * ext/win32ole/win32ole_type.h: ditto. * ext/win32ole/depend: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47107 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: separate src of WIN32OLE_TYPELIB fromsuke2014-08-061-842/+38
| | | | | | | | | | | | win32ole.c * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_typelib.c: ditto. * ext/win32ole/win32ole_typelib.h: ditto. * ext/win32ole/depend: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47088 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c (olerecord_ivar_set): remove rb_str_subseq.suke2014-08-061-5/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: separate src of WIN32OLERuntimeErrorsuke2014-08-061-79/+2
| | | | | | | | | | | | | from win32ole.c. * ext/win32ole/win32ole.h: ditto * ext/win32ole/depend: ditto. * ext/win32ole/win32ole_error.c: ditto. * ext/win32ole/win32ole_error.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47080 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c (ole_invoke): skip VariantClear whensuke2014-08-051-2/+4
| | | | | | | | argument is VT_RECORD variant. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c (ole_invoke): call rb_hash_foreach insteadsuke2014-08-041-12/+26
| | | | | | | | | | of rb_block_call. * ext/win32ole/win32ole.c: add comment for rdoc of WIN32OLE_VARIANT class. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47060 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext: prefer RB_TYPE_P over comparison TYPE with constantsnobu2014-08-031-38/+38
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: separate WIN32OLE::VARIANT src filesuke2014-08-021-225/+2
| | | | | | | | | | | | | from win32ole.c * ext/win32ole/win32ole.h: ditto. * ext/win32ole/win32ole_variant_m.c: ditto. * ext/win32ole/win32ole_variant_m.h: ditto. * ext/win32ole/depend: ditto. * ext/.document: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47033 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: VERSION 1.7.0 -> 1.7.1suke2014-08-021-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47031 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: add coments for rdoc.suke2014-08-021-4/+206
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c (folerecord_inititalize): acceptsuke2014-08-011-24/+23
| | | | | | | | only 2 arguments. The 2nd argument should be WIN32OLE object or WIN32OLE_RECORD object. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c (ole_variant2val): callsuke2014-08-011-2/+2
| | | | | | | folerecord_s_allocate instead of WIN32OLE_RECORD.new. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47026 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: add WIN32OLE_RECORD#inspect.suke2014-07-311-1/+18
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47020 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c: addsuke2014-07-311-6/+91
| | | | | | | | | WIN32OLE_RECORD#ole_instance_variable_set and WIN32OLE_RECORD#ole_instance_variable_get git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47019 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c (ole_invoke): pass WIN32OLE_RECORD variantsuke2014-07-301-6/+12
| | | | | | | | | | | by reference when invoke OLE methods at first. * ext/win32ole/win32ole.c (olerecord_set_ivar): release IRecordInfo interface before setting another IRecordInfo interface. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/win32ole/win32ole.c (hash2olerec): ignore WIN32OLE_RECORDsuke2014-07-291-12/+13
| | | | | | | | instance variable if the variable is nil. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e