Граф коммитов

370 Коммитов

Автор SHA1 Сообщение Дата
nobu 24252ff434 win32ole.c: suppress warnings
* ext/win32ole/win32ole.c: use LONG instead of long to suppress
  incompatible pointer warnings.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45641 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-04-20 00:12:15 +00:00
suke 7a2b7cf197 ext/win32ole/win32ole.c (ole_typedesc2val): add VT_RECORD case.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-02-01 06:16:42 +00:00
hsbt d1ab866d4a * ext/nkf/nkf-utf8/nkf.c: fix typo by @windwiny [fix GH-506]
* ext/openssl/ossl_ssl.c: ditto
* ext/psych/yaml/scanner.c: ditto
* ext/socket/init.c: ditto
* ext/socket/socket.c: ditto
* ext/tk/tcltklib.c: ditto
* ext/win32ole/win32ole.c: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44649 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-01-19 05:43:23 +00:00
nobu 9bd672f668 ext: use rb_sprintf() and rb_vsprintf() with PRIsVALUE
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-01-12 08:11:36 +00:00
a_matsuda e1db3605fd * ext/win32ole/sample/olegen.rb: Fix typo
* ext/openssl/ossl_asn1.c:  [DOC] Fix typo
* lib/webrick/accesslog.rb:  ditto
* template/yarvarch.ja:  ditto

s/recieve/receive/

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-11 03:58:07 +00:00
nobu e1a7f50ce6 win32ole.c: correct declaration
* ext/win32ole/win32ole.c (hash2named_arg): correct declaration to fix
  build failure.  a patch by phasis68 (Heesob Park) at
  [ruby-core:58710].  [Bug #9184]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-30 09:05:48 +00:00
nobu 7566c49068 ruby/ruby.h: RB_BLOCK_CALL_FUNC_ARGLIST
* include/ruby/ruby.h (RB_BLOCK_CALL_FUNC_ARGLIST): for declaration
  argument list of rb_block_call_func.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-11-29 07:59:14 +00:00
suke 04976ab678 * ext/win32ole/win32ole.c (folevariant_initialize): check type of
element of array.

* test/win32ole/test_win32ole_variant.rb (test_s_new_ary): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-08 05:06:20 +00:00
nobu fb9b9b1862 win32ole.c: ID overflow
* ext/win32ole/win32ole.c (GetIDsOfNames): check ID overflow against
  DISPID, aka LONG, which is always 4 bytes.

* ext/win32ole/win32ole.c (Invoke): use ID for method name to get rid
  of losing upper bits.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-23 14:09:49 +00:00
nobu f539e9cbf3 win32ole.c: store directly
* ext/win32ole/win32ole.c (ole_wc2vstr): store converted multibyte
  string to string value directly.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-23 08:17:59 +00:00
nobu dcdde335a6 win32ole.c: suppress a warning
* ext/win32ole/win32ole.c (ole_vstr2wc): downcast to suppress a
  warning.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42663 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-23 08:17:56 +00:00
nobu df3c472ac3 win32ole.c: check method name length
* ext/win32ole/win32ole.c (fole_missing): reject too long method name,
  as Ruby string length is limited to long.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-23 08:17:53 +00:00
nobu 91218a0e9f win32ole.c: suppress warnings
* ext/win32ole/win32ole.c (ole_excepinfo2msg, ole_wc2vstr): get rid of
  size_t with rb_enc_str_new() to suppress warnings on x64-mswin32.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42661 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-23 08:17:50 +00:00
nobu 3134c5eb62 win32ole.c: no copy string
* ext/win32ole/win32ole.c (foletypelib_name, foletypelib_path):
  WC2VSTR() returns a string in cWIN32OLE_enc, no need to copy another
  string.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42660 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-23 08:17:47 +00:00
nobu e2b08f40b3 win32ole.c: fix type
* ext/win32ole/win32ole.c (ole_method_docinfo_from_type): fix return type.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-23 08:17:43 +00:00
shugo 1f828497d1 * safe.c (rb_set_safe_level, safe_setter): raise an ArgumentError
when $SAFE is set to 4.  $SAFE=4 is now obsolete.
  [ruby-core:55222] [Feature #8468]

* object.c (rb_obj_untrusted, rb_obj_untrust, rb_obj_trust):
  Kernel#untrusted?, untrust, and trust are now deprecated.
  Their behavior is same as tainted?, taint, and untaint,
  respectively.

* include/ruby/ruby.h (OBJ_UNTRUSTED, OBJ_UNTRUST): OBJ_UNTRUSTED()
  and OBJ_UNTRUST() are aliases of OBJ_TAINTED() and OBJ_TAINT(),
  respectively.

* array.c, class.c, debug.c, dir.c, encoding.c, error.c, eval.c,
  ext/curses/curses.c, ext/dbm/dbm.c, ext/dl/cfunc.c,
  ext/dl/cptr.c, ext/dl/dl.c, ext/etc/etc.c, ext/fiddle/fiddle.c,
  ext/fiddle/pointer.c, ext/gdbm/gdbm.c, ext/readline/readline.c,
  ext/sdbm/init.c, ext/socket/ancdata.c, ext/socket/basicsocket.c,
  ext/socket/socket.c, ext/socket/udpsocket.c,
  ext/stringio/stringio.c, ext/syslog/syslog.c, ext/tk/tcltklib.c,
  ext/win32ole/win32ole.c, file.c, gc.c, hash.c, io.c, iseq.c,
  load.c, marshal.c, object.c, proc.c, process.c, random.c, re.c,
  safe.c, string.c, thread.c, transcode.c, variable.c,
  vm_insnhelper.c, vm_method.c, vm_trace.c: remove code for
  $SAFE=4.

* test/dl/test_dl2.rb, test/erb/test_erb.rb,
  test/readline/test_readline.rb,
  test/readline/test_readline_history.rb, test/ruby/test_alias.rb,
  test/ruby/test_array.rb, test/ruby/test_dir.rb,
  test/ruby/test_encoding.rb, test/ruby/test_env.rb,
  test/ruby/test_eval.rb, test/ruby/test_exception.rb,
  test/ruby/test_file_exhaustive.rb, test/ruby/test_hash.rb,
  test/ruby/test_io.rb, test/ruby/test_method.rb,
  test/ruby/test_module.rb, test/ruby/test_object.rb,
  test/ruby/test_pack.rb, test/ruby/test_rand.rb,
  test/ruby/test_regexp.rb, test/ruby/test_settracefunc.rb,
  test/ruby/test_struct.rb, test/ruby/test_thread.rb,
  test/ruby/test_time.rb: remove tests for $SAFE=4.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41259 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-12 14:20:51 +00:00
zzak 3a7a773aeb * ext/socket/option.c: Document synonymous methods, by windwiny [GH-277]
* ext/stringio/stringio.c: ditto
* ext/io/wait/wait.c: ditto
* ext/gdbm/gdbm.c: ditto
* ext/dl/cfunc.c: ditto
* ext/zlib/zlib.c: ditto
* ext/win32ole/win32ole.c: ditto
* ext/dbm/dbm.c: ditto
* ext/json/generator/generator.c: ditto
* ext/date/date_core.c: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40319 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-16 03:25:50 +00:00
nobu 311960cdaf win32ole.c: check arity
* ext/win32ole/win32ole.c (fole_missing): should check actual argument
  count before accessing.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40184 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-08 08:19:32 +00:00
suke 57408cb1d1 * ext/win32ole/win32ole.c: use TlsAlloc instead of __declspec(thread)
to avoid SEGV if win32ole.so loaded with LoadLibrary in Windows
  Vista or earlier.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-25 10:17:59 +00:00
nobu 090d20fc16 win32ole: remove win32ole.rb
* ext/win32ole/lib/win32ole.rb: no longer used.  [Bug #2618] [ruby-core:27634]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-18 02:29:59 +00:00
nobu 27ed294c71 win32ole: OLE uninitialize
* ext/win32ole/win32ole.c (ole_initialize): uninitialize OLE at thread
  ends.  [Bug #2618] [ruby-core:27634]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-18 02:24:35 +00:00
nobu 588504b20f win32ole: OLE initialize per threads
* ext/win32ole/win32ole.c (ole_initialize): initialize OLE for each
  threads.  [Bug #2618] [ruby-core:27634]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-18 02:23:37 +00:00
nobu 03d19637f6 win32ole: warning flag
* ext/win32ole/extconf.rb (create_win32ole_makefile): replace or
  append warning flag.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38861 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-17 08:50:12 +00:00
nobu a23469f4b6 win32ole: unused variables
* ext/win32ole/win32ole.c (ole_methods_sub, ole_variables),
  (ole_search_event_at): remove unused variables.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38860 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-17 08:50:09 +00:00
nobu 70c647b8c5 win32ole.c: prototype
* ext/win32ole/win32ole.c: use prototype instead of old K&R style.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-17 05:06:28 +00:00
nobu 0c61c3b67b win32ole.rb: use TracePoint
* ext/win32ole/lib/win32ole.rb: use TracePoint to hook all thread
  creation not only by Thread.new and to get rid of interference with
  svar scope.  [Bug #7681] [ruby-core:51365]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38848 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-16 09:45:48 +00:00
nobu c2f9fcad71 * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-12 01:41:43 +00:00
suke 92a7da1900 * ext/win32ole/win32ole.c (ole_set_byref): support VT_UI8|VT_BYREF,
VT_I8|VT_BYREF in cygwin and mingw.
	  
* ext/win32ole/win32ole.c (ole_variant2val): ditto.

* test/win32ole/test_win32ole_variant.rb (test_s_new_with_i8_byref):
  ditto.

* test/win32ole/test_win32ole_variant.rb (test_s_new_with_ui8_byref):
  ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-01-11 22:59:51 +00:00
nobu 0d6d23b25d * ext: remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31689 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-22 09:26:02 +00:00
nobu 3a47cf3395 * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-15 11:55:52 +00:00
nobu 508d65a542 * ext/win32ole/extconf.rb (create_docfile): removed. should not
modify source directory unnecessarily, platform dependent
  documentation should be dealt with by rdoc.  [ruby-core:35495]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31121 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-17 15:59:40 +00:00
nobu 59a666a25f * lib/mkmf.rb (try_func): accept variable address.
* ext/win32ole/extconf.rb: libuuid is needed on cygwin.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29746 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 12:32:15 +00:00
nobu 8a7aad9952 * fix type warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 12:30:39 +00:00
suke 59a88b94f0 * ext/win32ole/win32ole.c (ole_encoding2cp): set codepage 20936
according to GB2312. [Bug #3937] [ruby-core:32758]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29517 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-16 02:14:32 +00:00
suke 12dc1ffd47 * ext/win32ole/win32ole.c (ole_hresult2msg): get English message first,
instead of system default. [ruby-core:32765]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-15 13:55:47 +00:00
suke b1085abaeb * ext/win32ole/win32ole.c (reg_get_val): expand environment in
the pathname. [Bug #3907]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-14 11:56:10 +00:00
nobu c53664c84d .cvsignore: have not been used already. [Bug #3468]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-07 05:43:21 +00:00
suke 93426cd6e8 * ext/win32ole/win32ole.c: fix checking version of GCC.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28894 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-07 00:49:59 +00:00
suke d4fc0799b7 * ext/win32ole/win32ole.c: NONAMELESSUNION defined only if gcc
version is older than 3.4.4. [ruby-core:31567] [Bug #3637]
* ext/win32ole/extconf.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-02 12:21:00 +00:00
suke e8f2d9e808 * ext/win32ole/win32ole.c: fix typo. [ruby-core:31564][Bug #3636]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28809 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-31 23:54:49 +00:00
suke 0864df17fb * ext/win32ole/win32ole.c (reg_get_typelib_file_path): try win64
registry entry at first. [ruby-dev:41674] [Bug #3464]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28403 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-23 12:41:26 +00:00
suke c3a13f6cc4 * ext/win32ole/win32ole.c (ole_invoke): raise NoMethodError
when COM method is not found. [ruby-core:30160] [Bug #3277]

* test/win32ole/test_win32ole.rb (test_no_method_error): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27922 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-20 11:55:10 +00:00
nobu 977267c2e0 * ext/**/*.[ch]: removed trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-22 08:04:13 +00:00
suke 4b18062808 * ext/win32ole/win32ole.c: add WIN32OLE.ole_initialize,
WIN32OLE.ole_uninitialize to use in win32ole.rb.
  You must not use thease methods.

* ext/win32ole/lib/win32ole.rb: add win32ole.rb 
  re-define Thread#initialize (fix ruby-core:27634)


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-23 11:02:17 +00:00
suke b3c318bffd * ext/win32ole/win32ole.c (foleparam_initialize): add foleparam_initialize
to check argument of WIN32OLE_PARAM.new

* test/win32ole/test_win32ole_param.rb (test_s_new): add some assertion
  to test WIN32OLE_PARAM.new


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26184 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-12-27 01:51:54 +00:00
suke 476a0355db * ext/win32ole/win32ole.c (oletypelib_get_libattr): some refactoring
by adding oletypelib_get_libattr

-This line, and those below, will be ignored--

M    ChangeLog
M    ext/win32ole/win32ole.c


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24901 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-13 12:28:00 +00:00
suke 6f0b0701d0 * ext/win32ole/win32ole.c (oletypelib_get_typelib): some refactoring
by adding oletypelib_get_typelib.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24900 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-13 11:58:52 +00:00
suke 1c75c0e28c ext/win32ole/win32ole.c: some refactoring.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-13 10:42:24 +00:00
suke 831396217a * ext/win32ole/win32ole.c: fix WIN32OLE_TYPELIB.new when the 1st
argument is the non-registered file.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-12 23:36:29 +00:00
suke 488aa8307d * ext/win32ole/win32ole.c (EVENTSINK_Invoke): initialize result
variant value.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-11 22:55:47 +00:00
suke 83c5ebaecb * ext/win32ole/win32ole.c: use SafeStringValue instead of
Check_SafeStr.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24693 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-08-28 11:38:57 +00:00
suke 904abb1d9b * ext/win32ole/win32ole.c (vtdate2rbtime): VT_DATE variant object
is converted to Time object now. 

* test/win32ole/test_win32ole_variant.rb (test_s_new_with_nil,
  test_conversion_time2date, test_conversion_str2date,
  test_conversion_vt_date, test_set_value): ditto.

* ext/win32ole/win32ole.c (rbtime2vtdate): refactoring. 


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24220 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-21 07:27:08 +00:00
suke 8ea0786da1 * ext/win32ole/win32ole.c (foletypelib_name): should return
encoded name corresponding to WIN32OLE.codepage.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23469 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-17 00:37:07 +00:00
nobu 287a34ae0d * {ext,lib,test}/**/*.rb: removed trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 03:56:38 +00:00
nobu a9a17a5a44 * ext/win32ole/win32ole.c (load_conv_function51932): fixed for the
case IMultiLanguage is not available.  [ruby-dev:37950]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22180 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-09 11:11:57 +00:00
nobu 2478f1caaf * lib/xmlrpc/server.rb (Server#serve): gets rid of hardcoded
platform names.

* lib/resolv.rb (Resolv::Hosts::DefaultFileName),
  (Resolv::DNS::Config.default_config_hash): tries win32/resolv on
  mswin64 too.

* lib/rubygems/specification.rb (Gem::Specification#ruby_code):
  aded mswin64.

* lib/drb/extservm.rb (DRb::ExtServManager#invoke_service_command):
  spawn is better to start a process in background.

* ext/extmk.rb: uses FNM_SYSCASE.

* instruby.rb: installs win32.h on mswin64 platform.
  [ruby-core:21722]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-01 23:12:52 +00:00
suke 696e6a9b76 * ext/win32ole/win32ole.c (fole_s_connect, fole_initialize,
folevariant_initialize): check argument type of WIN32OLE.connect,
  WIN32OLE.new, WIN32OLE_VARIANT.new.

* test/win32ole/test_win32ole.rb (test_s_new_exc, test_s_connect_exc):
  ditto.

* test/win32ole/test_win32ole_variant.rb (test_s_new_exc): ditto.

* test/win32ole/test_win32ole_method.rb: add assertion of
  WIN32OLE_METHOD.new.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20113 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-06 12:38:49 +00:00
suke 2d45869c76 * ext/win32ole/win32ole.c (ole_event_free): invoke IConnectionPoint::Unadvise
before invoking IConnectionPoint::Release.

* test/win32ole/test_win32ole_event.rb, test/win32ole/err_in_callback.rb,
  test/win32ole/test_err_in_callback.rb: Use ActiveX Data Object
  Library instead of InternetExplorer.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20089 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-02 13:22:42 +00:00
suke f457364cae * ext/win32ole/win32ole.c (load_conv_function51932): check
having IMultiLanguage2 or IMultiLanguage. [ruby-dev:36716]

* ext/win32ole/extconf.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-14 12:44:37 +00:00
suke 80a5a3f9dc * ext/win32ole/win32ole.c (load_conv_function51932): support
CP51932 on cygwin and mingw32. thanks to arton.

* test/win32ole/test_win32ole.rb (test_cp51932): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19767 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-13 00:03:11 +00:00
suke e64453aa69 * ext/win32ole/win32ole.c (set_ole_codepage, ole_cp2encoding,
ole_wc2mb, ole_vstr2wc, ole_mb2wc): support CP51932 (only mswin32).

* test/win32ole/test_win32ole.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-12 09:06:45 +00:00
suke b7212ba643 * ext/win32ole/win32ole.c (ole_init_cp): initialize WIN32OLE.codepage
according to Encoding.default_internal and
  Encoding.default_external.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19717 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-08 12:05:18 +00:00
suke 06df4049ed * ext/win32ole/win32ole.c (fev_initialize): initialization
handler instance variable.

* test/win32ole/test_win32ole_typelib.rb (test_s_typelibs):
  fix the warning of shadowing outer local variable.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-29 11:18:37 +00:00
suke 8dcd42552f * ext/win32ole/win32ole.c (rescue_callback): use rb_write_error
instead of fprintf.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-29 11:01:55 +00:00
ko1 69029b90fe * gc.c, include/ruby/ruby.h: rename rb_register_mark_object()
to rb_gc_register_mark_object().
* eval.c, vm.c: initialize vm->mark_object_ary at
  Init_top_self().
* bignum.c, complex.c, encoding.c, ext/win32ole/win32ole.c,
  io.c, load.c, marshal.c, rational.c, ruby.c, vm.c:
  use rb_gc_register_mark_object() instead of
  rb_global_variable() or rb_gc_register_address().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19365 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-15 14:59:14 +00:00
suke f6f85ad683 * ext/win32ole/win32ole.c (ole_invoke): WIN32OLE#[] and WIN32OLE#[]=
accepts number argument.

* test/win32ole/test_win32ole.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-27 14:43:23 +00:00
suke e231d67ee1 * ext/win32ole/win32ole.c (hash2named_arg): refactoring.
* ext/win32ole/win32ole.c (ole_invoke, fole_respond_to, ev_on_event,
  fev_off_event): accepts Symbol argument.

* test/win32ole/test_win32ole.rb: ditto.

* test/win32ole/test_win32ole_event.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18324 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-03 10:43:44 +00:00
suke 1f9fce063f add sample script using WIN32OLE_EVENT#handler=
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18226 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-26 12:49:25 +00:00
suke 2e400ad1b8 * ext/win32ole/win32ole.c (Init_win32ole): add
WIN32OLE_EVENT#handler=, WIN32OLE_EVENT#handler

* test/win32ole/test_win32ole_event.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18225 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-26 12:27:57 +00:00
suke 6997482140 * ext/win32ole/win32ole.c (add_event_call_back): remove unused
variable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-25 22:48:25 +00:00
suke 148d575264 * ext/win32ole/win32ole.c (ole_invoke, add_event_callback,
rescue_callback): refactoring.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18216 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-25 12:13:57 +00:00
suke 4aec73e1ed * ext/win32ole/win32ole.c (Init_win32ole): add
WIN32OLE_EVENT#off_event.

* test/win32ole/test_win32ole_event.rb: ditto.
	
* test/win32ole/test_win32ole_event.rb: some refactoring.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-25 11:49:28 +00:00
nobu 7481463bf6 * ext/win32ole/win32ole.c: got rid of improper casts.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-23 22:01:36 +00:00
suke 4e554319dd * ext/win32ole/win32ole.c (EVENTSINK_Invoke): use rb_protect
instead of rb_rescue2. [ruby-dev:35595]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-20 07:05:20 +00:00
suke a9b125cf20 * ext/win32ole/win32ole.c (EVENTSINK_Invoke): little refactoring.
* ext/win32ole/win32ole.c (EVENTSINK_GetIDsOfNames): return
  ITypeInfo::GetIDsOfNames().



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18133 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-19 16:28:23 +00:00
suke 535f17f30b * ext/win32ole/win32ole.c (EVENTSINK_Invoke): little refactoring.
* ext/win32ole/win32ole.c: add document of inspect methods.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18132 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-19 00:35:38 +00:00
suke 305b347ae5 * ext/win32ole/win32ole.c (EVENTSINK_Invoke): avoid cfp consistency
error when exception raised in event callback.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18125 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-18 14:28:37 +00:00
suke 6e0ed5570e * ext/win32ole/win32ole.c (EVENTSINK_Invoke): using hash
to set value to the reference argument of event.

* test/win32ole/test_win32ole_event.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-13 12:36:26 +00:00
suke 4857543691 * ext/win32ole/win32ole.c (find_default_source): bug fix when
OLE object does not have default source interface.

* test/win32ole/test_win32ole_event.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17960 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-08 14:05:38 +00:00
suke 6c32d10c01 * ext/win32ole/win32ole.c (find_default_source): try to
find COCLASS when WIN32OLE object is not COCLASS. 

* test/win32ole/test_win32ole_event.rb: ditto


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17956 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-08 11:13:09 +00:00
suke 6aff4b8eaa * ext/win32ole/win32ole.c(Init_win32ole): add
WIN32OLE_TYPE#source_ole_types, WIN32OLE_TYPE#default_ole_types,
  WIN32OLE_TYPE#default_event_sources.

* test/win32ole/test_win32ole_type.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17942 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-07 11:49:14 +00:00
suke 1890ae7aa9 * ext/win32ole/win32ole.c: add WIN32OLE#ole_respond_to?
* test/win32ole/test_win32ole.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17885 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-05 01:01:01 +00:00
suke 7a05bfaaab * ext/win32ole/win32ole.c (d2time): fix the bug of VT_DATE
to String conversion when negative value.
	  
* test/win32ole/test_win32ole_variant.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17878 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-04 14:19:01 +00:00
suke 854d955393 * ext/win32ole/win32ole.c (Init_win32ole): remove duplicate line.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17850 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-03 10:48:02 +00:00
suke b892e3dd1b * ext/win32ole/win32ole.c: avoid creating Ruby object during
GC. thanks to arton <artonx AT yahoo.co.jp>. [ruby-dev:35313]

* test/win32ole/test_win32ole_event.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-02 15:35:04 +00:00
suke e47ebfe518 * ext/win32ole/win32ole.c (date2time_str): fix the overflow in
some situation. [ruby-bugs-20793]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17641 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-28 23:00:58 +00:00
suke dd02419760 * ext/win32ole/win32ole.c : check String encoding when
converting String to VT_BSTR in OLE.

* test/win32ole/test_win32ole.rb : ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-27 23:43:57 +00:00
suke 238738f314 * ext/win32ole/win32ole.c(ole_invoke): fix memory leak.
[ruby-bugs-20792]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-24 13:11:21 +00:00
usa 11fbd724cc * ext/win32ole/win32ole.c: avoid warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16130 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-22 00:58:51 +00:00
knu ffc456d0ed * ext/dbm/dbm.c (fdbm_each_value, fdbm_each_key, fdbm_each_pair):
GDBM#{each,each_pair,each_key,each_value}: Return an enumerator
	  if no block is given.

	* ext/gdbm/gdbm.c (fgdbm_each_value, fgdbm_each_key,
	  fgdbm_each_pair): GDBM#{each,each_pair,each_key,each_value}:
	  Return an enumerator if no block is given.

	* ext/openssl/ossl_config.c (ossl_config_each):
	  OpenSSL::Config#each: Return an enumerator if no block is given.

	* ext/readline/readline.c (hist_each): Readline::HISTORY#each:
	  Return an enumerator if no block is given.

	* ext/sdbm/init.c (fsdbm_each_value, fsdbm_each_key,
	  fsdbm_each_pair): SDBM#{each,each_pair,each_key,each_value}:
	  Return an enumerator if no block is given.

* ext/stringio/stringio.c (strio_each_byte, strio_each):
  StringIO#{each,each_line,each_byte}: Return an enumerator if no
  block is given.

* ext/stringio/stringio.c (Init_stringio): Add #lines and #bytes,
  which are aliases to #each_line and #each_byte, respectively.

* ext/win32ole/win32ole.c (fole_each): WIN32OLE#each: Return an
  enumerator if no block is given.

* ext/zlib/zlib.c (rb_gzreader_each_byte, rb_gzreader_each):
  Zlib::GzipReader#{each,each_line,each_byte}: Return an
  enumerator if no block is given.

* ext/zlib/zlib.c (Init_zlib): Add Zlib::GzipReader#lines and
  #bytes, which are aliases to #each_line and #each_byte,
  respectively.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16125 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-21 08:48:33 +00:00
usa fa222ced64 * ext/win32ole/win32ole.c (ole_init_cp): should return value.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-23 12:36:51 +00:00
suke 93efbc78bd * ext/win32ole/win32ole.c (ole_encoding2cp): remove US-ASCII
mapping.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-23 09:55:33 +00:00
suke 41ca14e8ac * ext/win32ole/win32ole.c (ole_init_cp): initialize WIN32OLE.codepage
according to Encoding.default_external.

* test/win32ole/test_win32ole.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-15 11:36:24 +00:00
naruse 40d8d38909 * ext/json/lib/json/pure/generator.rb,
ext/json/lib/json/pure/parser.rb, ext/openssl/lib/openssl/x509.rb,
ext/win32ole/sample/olegen.rb, lib/date/format.rb, lib/irb/context.rb,
lib/irb/workspace.rb, lib/net/http.rb, lib/net/imap.rb,
lib/rdoc/generator.rb, lib/rdoc/markup/to_html.rb,
lib/rdoc/markup/to_latex.rb, lib/rdoc/parsers/parse_c.rb,
lib/rdoc/ri/formatter.rb, lib/rexml/parsers/baseparser.rb,
lib/rexml/quickpath.rb, lib/rexml/text.rb, lib/rss/parser.rb,
lib/uri/common.rb, lib/uri/generic.rb, lib/webrick/httpresponse.rb,
lib/webrick/httpservlet/filehandler.rb, lib/yaml/baseemitter.rb,
lib/yaml/encoding.rb: performance tuning arround String#gsub.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-12 06:18:06 +00:00
usa 1e8e70a311 * ext/win32ole/win32ole.c (ole_cp2encoding): new function.
* ext/win32ole/win32ole.c (ole_wc2vstr, ole_variant2val, fole_missing):
	  set encoding to result.

	* ext/win32ole/win32ole.c (fole_s_set_code_page, Init_win32ole): set
	  default encoding.
	  [ruby-dev:33433]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15294 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-28 10:42:53 +00:00
suke 1b8aac3269 * ext/win32ole/win32ole.c (ole_set_safe_array): should not use
recursive calling.

* test/win32ole/test_win32ole_variant.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15121 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-19 00:29:31 +00:00
akr 6cdef2dc7e * $Date$ keyword removed to avoid inclusion of locale dependent
string.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-06 15:49:38 +00:00
akr 4cf437519f * regerror.c, string.c, io.c, lib/getoptlong.rb, lib/net/imap.rb,
compile.c, sprintf.c, parse.y, ext/win32ole/win32ole.c,
  ext/tk/sample/demos-en/entry3.rb, ext/tk/lib/tcltk.rb,
  ext/openssl/ossl_bn.c, numeric.c, vm.c,
  benchmark/bm_so_meteor_contest.rb, bignum.c, ruby.c: don't "illegal"
  for non law violation context.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14377 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-21 02:31:11 +00:00
suke 24dcd39f19 ext/win32ole/win32ole.c (ole_invoke): bug fix. [ruby-talk:279100]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13952 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-17 15:04:55 +00:00
suke 31c764ff7f * ext/win32ole/win32ole.c (foletype_s_ole_classes,
foletype_s_typelibs): refactoring.
	
* test/win32ole/test_win32ole_type.rb: add some test. 

* ext/win32ole/win32ole.c (Init_win32ole): change method name
  WIN32OLE_TYPELIB.ole_types from WIN32OLE_TYPELIB.ole_classes.

* test/win32ole/test_win32ole_typelib.rb: ditto.

* test/win32ole/test_folderitem2_invokeverb.rb: check create
  shortcut string more strictly (This test is invoked in Japanese
  Windows environment).



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-10-13 12:40:24 +00:00
suke b528261ad8 * ext/win32ole/win32ole.c (fev_unadvise): no needs to reset
event handlers.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13445 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-14 13:25:44 +00:00
suke 9ecd43fa98 * ext/win32ole/win32ole.c: add WIN32OLE_EVENT#unadvise.
* test/win32ole/test_win32ole_event.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13341 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-04 11:48:53 +00:00
suke 0c5e6ab2bb * ext/win32ole/win32ole.c (ole_event_free): IConnectionPoint should be
released.

* ext/win32ole/win32ole.c (EVENTSINK_Destructor): ITypeInfo should be
  released.

* ext/win32ole/win32ole.c (fev_initialize): refactoring.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13329 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-01 11:11:51 +00:00
suke 41585e424b * ext/win32ole/win32ole.c (ole_type_progid): progid getted by
ProgIDFromCLSID should be freed by CoTaskMemFree. Thanks, arton.

* test/win32ole/test_win32ole.rb (test_raise_message): set negative
  compareMode value to raise WIN32OLERuntimeError.

* test/win32ole/test_win32ole_type.rb (test_implemented_ole_types):
  support some environment which returns IShellDispatch5 instead 
  of IShellDispatch.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13296 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-28 10:23:31 +00:00
suke a1a618ead1 * ext/win32ole/win32ole.c (ole_type_progid): fix the bug.
[ruby-dev:31576]

* test/win32ole/test_win32ole_type.rb (test_initialize):
  remove duplicate assertions.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-27 11:38:29 +00:00
suke 71e6011d63 * ext/win32ole/win32ole.c (ole_wc2mb, reg_enum_key): allocate
buffer should be NULL terminated.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13277 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-25 21:57:46 +00:00
suke 890eb07370 * ext/win32ole/win32ole.c (ole_event_free, EVENTSINK_Destructor,
fev_initialize): remove the connection ole_event_free and 
  EVENTSINK_Destructor.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13272 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-25 14:01:08 +00:00
suke 32716144fd * ext/win32ole/win32ole.c (reg_get_value): use RegQueryValueEx instead
of RegQueryValueEx.

* ext/win32ole/win32ole.c (typelib_file_from_clsid): fix the bug
  that the function always returns Qnil.

* test/win32ole/test_win32ole_type.rb (test_initialize): add some test.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13241 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-23 11:14:03 +00:00
ko1 14c3aa52ae * proc.c (Init_Proc), eval.c (Init_eval), eval_intern.h: move
init place of exception_error.
* inits.c: ditto.
* eval.c (Init_eval): set exception_error#throwed_state as TAG_FATAL.
  [ruby-dev:31407]
* bootstraptest/test_exception.rb: add a test for above.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-14 10:53:53 +00:00
nobu f1622c195d * file.c (rb_file_s_rename): deleted code to get rid of a bug of
old Cygwin.

* file.c (rb_file_truncate): added prototype of GetLastError()
  on cygwin.  [ruby-dev:31239]

* include/ruby/intern.h (is_ruby_native_thread): prototype.

* missing/strftime.c (strftime): fix printf format and actual
  arguments.

* ext/Win32API/Win32API.c (Win32API_initialize): ditto.

* ext/tk/tcltklib.c (ip_finalize): ditto.

* ext/win32ole/win32ole.c (lcid_installed): ditto.

* ext/socket/getnameinfo.c: include stdio.h always.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12836 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-22 05:33:54 +00:00
nobu 2b592580bf * include/ruby: moved public headers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10 03:06:15 +00:00
suke d50f882cf0 * ext/win32ole/win32ole.c: add WIN32OLE#ole_activex_initialize,
a little bit supporting ActiveX control. [ruby-talk:241188]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12082 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-16 13:24:06 +00:00
suke c769454c0e * ext/win32ole/win32ole.c: add WIN32OLE_TYPELIB#library_name,
WIN32OLE_TYPELIB#visible?.

* test/win32ole/test_win32ole_typelib.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-09 22:21:59 +00:00
suke e8783d008c * ext/win32ole/win32ole.c (get_ptr_of_variant, ole_set_safe_array,
ole_val2ptr_variant, ole_val2olevariantdata, ole_variant2val,
  ): fix some bugs of WIN32OLE_VARIANT.new when variant type is 
  VT_ARRAY|VT_BSTR or VT_BYREF.

* ext/win32ole/win32ole.c (folevariant_s_array, folevariant_initialize):
  WIN32OLE_VARIANT#[], WIN32OLE_VARIANT#[]=, WIN32OLE_VARIANT#value=
  is defined as instance method of WIN32OLE_VARIANT.

* test/win32ole/test_win32ole_variant.rb: add some test for 
  VT_ARRAY, VT_BYREF variant type.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11959 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-03-02 12:35:02 +00:00
suke 1fcf93350f * ext/win32ole/win32ole.c: add WIN32OLE_VARIANT.array,
WIN32OLE_VARIANT#value=, refactoring.

* test/win32ole/test_win32ole_variant.rb: add some test for
  WIN32OLE_VARIANT.array, WIN32OLE_VARIANT#value=.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-23 22:39:25 +00:00
suke 975ce3add3 * ext/win32ole/win32ole.c (installed_code_page_proc,
ole_variant2val): small refactoring.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-20 12:25:40 +00:00
suke fdf4aa982f * ext/win32ole/win32ole.c (ole_variant2val): VC++6 does not
support VT_I8, VT_UI8.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-14 13:57:59 +00:00
suke 1a4b93cf92 * ext/win32ole/win32ole.c (ole_variant2val): support VT_I8, VT_UI8.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11707 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-12 05:00:41 +00:00
suke 777ad4ee75 * ext/win32ole/win32ole.c (ole_ptrtype2val): ole_type, ole_type_detail
should not return "VARIANT,VARIANT".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11705 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-11 13:45:57 +00:00
suke 70db47aadb * ext/win32ole/win32ole.c (ole_val2olevariantdata):
WIN32OLE_VARIANT#new accepts nil when variant type is VT_ARRAY.

* test/win32ole/test_win32ole_variant.rb: ditto.

* ext/win32ole/win32ole.c: small refactoring.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11702 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-11 09:53:10 +00:00
suke 7634900b4e * ext/win32ole/win32ole.c: add WIN32OLE#ole_query_interface.
thanks to Mikael Pahmp.

* test/win32ole/test_win32ole.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11690 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-10 11:29:49 +00:00
suke 990ae267cd * ext/win32ole/win32ole.c (ole_set_safe_array, ole_variant2val,
ole_val_ary2variant_ary): fix WIN32OLE_VARIANT.new bug when
  1st argument is empty array, and when 2nd argument is 
  VT_ARRAY|VT_BYREF.

* test/win32ole/test_win32ole_variant.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11670 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-08 13:48:16 +00:00
suke d4b866914b * ext/win32ole/win32ole.c (ole_val2olevariantdata, ole_val2variant):
fix the bug of WIN32OLE_VARIANT.new when variant type is 
  VT_ARRAY.

* ext/win32ole/sample/excel1.rb: rewrite using WIN32OLE_VARIANT.

* test/win32ole/test_win32ole.rb: add some test.

* test/win32ole/test_win32ole_variant.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11624 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-03 05:41:03 +00:00
suke 883f34f777 * ext/win32ole/win32ole.c: add WIN32OLE.locale=, WIN32OLE.locale,
WIN32OLE_VARIANT#vartype.

* test/win32ole/test_win32ole.rb: add test for WIN32OLE.locale=,
  WIN32OLE.locale.

* test/win32ole/test_win32ole_variant.rb: add test for 
  WIN32OLE_VARIANT#vartype.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11588 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-29 12:41:50 +00:00
suke 7cc6cded59 * ext/win32ole/win32ole.c: refactoring.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11584 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-27 23:46:27 +00:00
suke 68daaab409 * ext/win32ole/win32ole.c (ole_val2olevariantdata): bug fix.
WIN32OLE_VARIANT.new check that 1st argument should T_ARRAY
  when variant type is VT_ARRAY.

* test/win32ole/test_win32ole_variant.rb: add some test. 


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-27 09:46:34 +00:00
suke bb435c7a6c bug fix of WIN32OLE_VARIANT when variant type is VT_BYREF|VT_VARIANT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11579 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-26 15:03:43 +00:00
suke 3b5dbc4b06 WIN32OLE.codepage= accepts installed codepage.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-20 12:12:36 +00:00
suke f700c1354f version 0.8.6.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-20 02:36:54 +00:00
suke e16e6a66ae modify WIN32OLERuntimeError message.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-20 02:28:49 +00:00
suke b44bd4c6d3 move all test from ext/win32ole/tests test/win32ole
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11545 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-20 00:37:35 +00:00
suke 59835fe865 move some test from ext/win32ole/tests to test/win32ole
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-19 15:17:56 +00:00
suke e538fe5703 add WIN32OLE_VARIANT::Empty, WIN32OLE_VARIANT::Null, WIN32OLE_VARIANT::Nothing.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-19 08:22:45 +00:00
suke 72cc74655f IN32OLE_VARIANT.new accepts nil as first argument for some VARIANT TYPE. fix memory leak.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11542 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-18 22:08:29 +00:00
suke d2907d42be fix memory leak of win32ole.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-13 14:40:54 +00:00
suke fe6e716424 ext/win32ole/doc removed
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-07 10:51:21 +00:00
suke b84ff5ccb3 add some test. update comment for rdoc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-07 08:56:04 +00:00
suke a782fa1268 add WIN32OLE::VARIANT::VT_NULL, WIN32OLE::VARIANT::VT_EMPTY.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11487 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-01-05 23:38:15 +00:00
ko1 a3e1b1ce7e * Merge YARV
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-31 15:02:22 +00:00
suke c6defdfa80 remove WIN32OLE::PROPERTY class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-12-27 12:00:54 +00:00
matz 2156870525 * ruby.h (struct RArray): embed small arrays.
(RARRAY_LEN): defined for accessing array members.
  (RARRAY_PTR): ditto.

* array.c: use RARRAY_LEN and RARRAY_PTR.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-09-02 14:42:08 +00:00
usa 6790891ef0 * ext/Win32API/Win32API.c (Win32API_initialize): use RSTRING_PTR and
RSTRING_LEN.

* ext/tk/stubs.c, ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: ditto.

* ext/win32ole/win32ole.c (ole_val2olevariantdata): ditto.

* lib/mkmf.rb (create_makefile): follow nil.to_s.

* win32/resource.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10812 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-31 11:56:42 +00:00
suke 0c2571d621 accept hash argument of Symbol key.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-08-19 07:53:27 +00:00
suke afdc2b89bd support some kind of method of word. [ruby-Bugs#3237]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-25 08:21:29 +00:00
suke 33311b653c support PROPERTYPUTREF. [ruby-talk:183042]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10316 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-18 11:34:53 +00:00
nobu 3e5f70a815 * math.c (log2): may be a macro.
* parse.y (args, block_param, f_args): pass f_post_arg to #params.

* util.c (powersOf10): constified.

* ext/readline/readline.c: include extconf.h first.

* ext/ripper/eventids2.c: removed tLAMBDA_ARG.

* ext/tk/tcltklib.c (lib_fromUTF8_core): removed conflict.

* ext/tk/tkutil/tkutil.c (cbsubst_get_subst_arg): rb_id2name() is
  defined as const now.

* ext/win32ole/win32ole.c (fole_missing): ditto.

* lib/mkmf.rb (create_makefile): force to create extconf header.

* lib/optparse.rb (order!): use Proc#yield.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10238 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-06-09 23:18:04 +00:00
suke 2bdd9d6eba ext/win32ole/win32ole.c (add_event_call_back): should not
delete event handler when the event name is not entried.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10125 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-05-01 09:05:08 +00:00
suke 9154b19bae ole_param_ole_type should return "unknown type" string when ITypeInfo::GetFuncDesc failed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10121 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-30 23:37:54 +00:00
suke 2b5beeed15 add test/win32ole/test_win32ole_variant.rb.
ext/win32ole/win32ole.c: use ANSI C style.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10119 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-30 13:11:12 +00:00
suke 93f080c12f remove testOLEPARAM.rb
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10086 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-08 09:16:58 +00:00
suke 29ba4ff416 add WIN32OLE_METHOD#inspect, WIN32OLE_PARAM#inspect
add test/win32ole/test_win32ole_param.rb


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-08 09:13:30 +00:00
suke de558c7995 remove testOLEPARAM.rb
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-08 09:11:39 +00:00
suke 11974f3b6d WIN32OLE_TYPELIB.new accepts OLE files.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10082 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-07 13:16:46 +00:00
suke 3ca351ec23 remove testOLEMETHOD.rb
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10073 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-01 09:21:27 +00:00
suke 63fa2de637 remove 3 test
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10072 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-01 06:25:41 +00:00
suke 3ff87cc53f add WIN32OLE_TYPE#inspect, WIN32OLE_VARIABLE#inspect
add test/win32ole and remove some test script from ext/win32ole/tests.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-04-01 06:23:07 +00:00
suke 801443f3ac change the behavior of WIN32OLE#[] and WIN32OLE#[]=.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-03-29 14:12:49 +00:00
usa 5bc9512a0b * ext/win32ole/win32ole.c (folevariant_value): could not compile
with C90 compiler.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-03-20 02:14:24 +00:00
suke 6c0256933b change behavior of converting OLE Variant object with VT_ARRAY|VT_UI1
and Ruby String object.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-03-19 00:56:59 +00:00
suke 88ea87db21 * ext/win32ole/win32ole.c(ole_val2olevariantdata): support VT_VARIANT in
WIN32OLE_VARIANT.new().

* ext/win32ole/tests/testOLEVARIANT.rb: ditto.

* ext/win32ole/tests/testOLEPARAM.rb: test method name should not be
  duplicated.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10032 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-03-12 08:09:48 +00:00
suke 9a59edfb4e add WIN32OLE.create_guid.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-11 13:00:46 +00:00
matz 5675cdbd41 * eval.c: unify ruby_class (for method definition) and ruby_cbase
(for constant reference).

* eval.c (rb_call0): use TMP_ALLOC() instead of allocating
  a temporary array object.

* eval.c (eval): need not to protect $SAFE value.
  [ruby-core:07177]

* error.c (Init_Exception): change NameError to direct subclass of
  Exception so that default rescue do not handle it silently.

* struct.c (rb_struct_select): update RDoc description.
  [ruby-core:7254]

* numeric.c (int_upto): return an enumerator if no block is
  attached to the method.

* numeric.c (int_downto): ditto.

* numeric.c (int_dotimes): ditto.

* enum.c (enum_first): new method Enumerable#first to take first n
  element from an enumerable.

* enum.c (enum_group_by): new method Enumerable#group_by that
  groups enumerable values according to their block values.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2006-02-03 09:15:42 +00:00
matz 4d467a0865 * ext/digest/digest.c (rb_digest_base_s_digest): add volatile to
protect temporary context object.  [ruby-dev:27979]

* ext/iconv/iconv.c (Init_iconv): rb_gc_register_address() should
  be called before actual variable initialization.
  [ruby-dev:27986]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-12-12 00:36:54 +00:00
suke 5fad2a15d1 add testNIL2VTEMPTY.rb
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9366 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-10-09 05:04:30 +00:00
suke 5d71328bca avoid core dump with WIN32OLE_EVENT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9282 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-09-23 08:39:24 +00:00
ocean a5df717c8e * ext/win32ole/win32ole.c: supress warnings. (win32)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-25 06:51:33 +00:00
suke 3dec8be265 refactoring
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9009 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-20 12:04:02 +00:00
suke ad4ef9cf0a add test script to check WIN32OLE can invoke InvokeVerb of FolderItem2
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9007 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-20 07:34:34 +00:00
suke ba30d87a36 add WIN32OLE_VARIANT class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-13 12:22:12 +00:00
suke 31c063eac3 add WIN32OLE_VARIANT class
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8983 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-13 12:13:20 +00:00
suke f50c302e77 * ext/win32ole/win32ole.c (WIN32OLE_EVENT#on_event): should set
only one event handler.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8974 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-08-12 12:58:47 +00:00
suke 14f0a0d0bd add WIN32OLE_TYPE#ole_typelib, WIN32OLE_TYPE#implemented_ole_types.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-30 09:51:48 +00:00
suke a2ae6182ae convert dispid in Ruby and C by INT2NUM and NUM2INT.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8738 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-07-09 13:03:10 +00:00
suke 9f6d8980ff * ext/win32ole/tests/testWIN32OLE.rb: add test for WIN32OLE.codepage=
* ext/win32ole/tests/testOLETYPELIB.rb: correct expected message.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-15 13:43:32 +00:00
suke 6a63e942ba ext/win32ole/win32ole.c(ole_invoke): retry after converting Qnil
to VT_EMPTY.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-15 13:05:01 +00:00
matz 70bbad3cfd * array.c: replace rb_protect_inspect() and rb_inspecting_p() by
rb_exec_recursive() in eval.c.

* eval.c (rb_exec_recursive): new function.

* array.c (rb_ary_join): use rb_exec_recursive().

* array.c (rb_ary_inspect, rb_ary_hash): ditto.

* file.c (rb_file_join): ditto.

* hash.c (rb_hash_inspect, rb_hash_to_s, rb_hash_hash): ditto.

* io.c (rb_io_puts): ditto.

* object.c (rb_obj_inspect): ditto

* struct.c (rb_struct_inspect): ditto.

* lib/set.rb (SortedSet::setup): a hack to shut up warning.
  [ruby-talk:132866]

* lib/time.rb (Time::strptime): add new function.  inspired by
  [ruby-talk:132815].

* lib/parsedate.rb (ParseDate::strptime): ditto.

* regparse.c: move st_*_strend() functions from st.c.  fixed some
  potential memory leaks.

* exception error messages updated.  [ruby-core:04497]

* ext/socket/socket.c (Init_socket): add bunch of Socket
  constants.  Patch from Sam Roberts <sroberts@uniserve.com>.
  [ruby-core:04409]

* array.c (rb_ary_s_create): no need for negative argc check.
  [ruby-core:04463]

* array.c (rb_ary_unshift_m): ditto.

* lib/xmlrpc/parser.rb (XMLRPC::FaultException): make it subclass
  of StandardError class, not Exception class.  [ruby-core:04429]

* parse.y (fcall_gen): lvar(arg) will be evaluated as
  lvar.call(arg) when lvar is a defined local variable. [new]

* object.c (rb_class_initialize): call inherited method before
  calling initializing block.

* eval.c (rb_thread_start_1): initialize newly pushed frame.

* lib/open3.rb (Open3::popen3): $? should not be EXIT_FAILURE.
  fixed: [ruby-core:04444]

* eval.c (is_defined): NODE_IASGN is an assignment.

* ext/readline/readline.c (Readline.readline): use rl_outstream
  and rl_instream.  [ruby-dev:25699]

* ext/etc/etc.c (Init_etc): sGroup needs HAVE_ST_GR_PASSWD check
  [ruby-dev:25675]

* misc/ruby-mode.el: [ruby-core:04415]

* lib/rdoc/generators/html_generator.rb: [ruby-core:04412]

* lib/rdoc/generators/ri_generator.rb: ditto.

* struct.c (make_struct): fixed: [ruby-core:04402]

* ext/curses/curses.c (window_color_set): [ruby-core:04393]

* ext/socket/socket.c (Init_socket): SO_REUSEPORT added.
  [ruby-talk:130092]

* object.c: [ruby-doc:818]

* parse.y (open_args): fix too verbose warnings for the space
  before argument parentheses.  [ruby-dev:25492]

* parse.y (parser_yylex): ditto.

* parse.y (parser_yylex): the first expression in the parentheses
  should not be a command.  [ruby-dev:25492]

* lib/irb/context.rb (IRB::Context::initialize): [ruby-core:04330]

* object.c (Init_Object): remove Object#type.  [ruby-core:04335]

* st.c (st_foreach): report success/failure by return value.
  [ruby-Bugs-1396]

* parse.y: forgot to initialize parser struct.  [ruby-dev:25492]

* parse.y (parser_yylex): no tLABEL on EXPR_BEG.
  [ruby-talk:127711]

* document updates - [ruby-core:04296], [ruby-core:04301],
  [ruby-core:04302], [ruby-core:04307]

* dir.c (rb_push_glob): should work for NUL delimited patterns.

* dir.c (rb_glob2): should aware of offset in the pattern.

* string.c (rb_str_new4): should propagate taintedness.

* env.h: rename member names in struct FRAME; last_func -> callee,
  orig_func -> this_func, last_class -> this_class.

* struct.c (rb_struct_set): use original method name, not callee
  name, to retrieve member slot.  [ruby-core:04268]

* time.c (time_strftime): protect from format modification from GC
  finalizers.

* object.c (Init_Object): remove rb_obj_id_obsolete()

* eval.c (rb_mod_define_method): incomplete subclass check.
  [ruby-dev:25464]

* gc.c (rb_data_object_alloc): klass may be NULL.
  [ruby-list:40498]

* bignum.c (rb_big_rand): should return positive random number.
  [ruby-dev:25401]

* bignum.c (rb_big_rand): do not use rb_big_modulo to generate
  random bignums.  [ruby-dev:25396]

* variable.c (rb_autoload): [ruby-dev:25373]

* eval.c (svalue_to_avalue): [ruby-dev:25366]

* string.c (rb_str_justify): [ruby-dev:25367]

* io.c (rb_f_select): [ruby-dev:25312]

* ext/socket/socket.c (sock_s_getservbyport): [ruby-talk:124072]

* struct.c (make_struct): [ruby-dev:25249]

* dir.c (dir_open_dir): new function.  [ruby-dev:25242]

* io.c (rb_f_open): add type check for return value from to_open.

* lib/pstore.rb (PStore#transaction): Use the empty content when a
  file is not found.  [ruby-dev:24561]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-03-04 06:47:45 +00:00
suke 4cbaddcf8c * ext/win32ole/win32ole.c: rename WIN32OLE#ole_obj_help to
WIN32OLE#ole_type. alias ole_obj_help to ole_type.

* ext/win32ole/tests/testWIN32OLE.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7222 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-06 11:42:35 +00:00
suke e4a65e4427 ext/win32ole/win32ole.c(typelib_file_from_typelib): search "win16"
entry to get library path.

ext/win32ole/win32ole.c(oletypelib_path): ditto.

ext/win32ole/win32ole.c(ole_typedesc2val): add VT_LPWSTR, VT_LPSTR,
VT_ERROR case.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7201 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-04 12:12:59 +00:00
suke cfc8755faf add rdoc style document.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7191 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-03 11:35:27 +00:00
eban 49fb289ea1 * MANIFEST, ext/**/MANIFEST: removed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7170 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-11-01 10:13:52 +00:00
suke c6cf2e24fe add WIN32OLE.codepage, WIN32OLE.codepage=
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7154 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-31 07:59:58 +00:00
eban 1c0b6e5829 * ext/win32ole/MANIFEST: added tests/testOLETYPELIB.rb.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7148 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-30 08:17:40 +00:00
matz 3e9e2bd4ed * eval.c (rb_eval): NODE_XSTR should pass copy of literal string.
* array.c (rb_ary_update): a[n,m]=nil no longer works as element
  deletion.

* enum.c (enum_sort_by): protect continuation jump in.
  [ruby-dev:24642]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7145 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-30 06:56:18 +00:00
suke ad2c05f1c0 ext/win32ole/win32ole.c: add WIN32OLE_TYPELIB class. add
WIN32OLE#ole_typelib method.

ext/win32ole/tests/testOLETYPELIB.rb: add WIN32OLE_TYPELIB class.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7144 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-30 06:25:00 +00:00
suke 9ec1f6d27e remove ext/win32ole/.document.
add win32ole ext/.document.
create .document dynamically by extconf.rb.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7095 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-21 15:10:06 +00:00
suke 05a43e2367 * ext/win32ole.c(ole_invoke): retrieve the result value when
retrying the IDispatch::invoke.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7072 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-19 11:40:33 +00:00
matz 1057902ac7 * io.c (read_all): block string buffer modification during
rb_io_fread() by freezing it temporarily. [ruby-dev:24479]

* dir.c (rb_push_glob): block call at once the end of method.
  [ruby-dev:24487]

* ext/enumerator/enumerator.c (enum_each_slice): remove
  rb_gc_force_recycle() to prevent potential SEGV.
  [ruby-dev:24499]

* ext/zlib/zlib.c (zstream_expand_buffer): hide internal string
  buffer by clearing klass.  [ruby-dev:24510]

* ext/socket/socket.c (sock_s_getservbyaname): protocol string
  might be altered.  [ruby-dev:24503]

* string.c (rb_str_upto): check if return value from succ is a
  string.  [ruby-dev:24504]

* io.c (rb_io_popen): get mode string via rb_io_flags_mode() to
  avoid mode string modification.  [ruby-dev:24454]

* io.c (rb_io_getline_fast): should take delim as unsigned char to
  distinguish EOF and '\377'.  [ruby-dev:24460]

* io.c (rb_io_getline): add check for RS modification.
  [ruby-dev:24461]

* enum.c (enum_sort_by): use qsort() directly instead using
  rb_iterate().  [ruby-dev:24462]

* enum.c (enum_each_with_index): remove rb_gc_force_recycle() to
  prevent access to recycled object (via continuation for
  example).  [ruby-dev:24463]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-19 10:25:23 +00:00
suke deaed31974 * ext/win32ole/win32ole.c (fole_func_methods): correct argument mismatch.
* ext/win32ole/win32ole.c (fole_get_methods): ditto.
	* ext/win32ole/win32ole.c (fole_put_methods): ditto.
	* ext/win32ole/tests/testWIN32OLE.rb: add test for WIN32OLE#ole_func_methods
	  WIN32OLE#ole_get_methods, WIN32OLE#ole_put_methods


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-17 04:02:16 +00:00
suke f282f05fbc .document : entry win32ole.c for rdoc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7043 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-15 14:49:44 +00:00
suke 4e5c3ea0dc .document : entry win32ole.c for rdoc.
MANIFEST : add .document


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-10-15 14:43:39 +00:00
ocean 42f00af5e3 * ext/win32ole/win32ole.c (ole_hresult2msg): remove trailing
CR and LF. (doesn't depend on CR+LF) [ruby-dev:23694]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6498 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-22 15:21:03 +00:00
suke 29904b93f4 * ext/win32ole/win32ole.c (OLE_FREE): should not call CoFreeUnuse-
dLibraries().

    * ext/win32ole/win32ole.c (ole_event_free): ditto.

    * ext/win32ole/win32ole.c (ole_hresult2msg): truncate error message
      before CR.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-06-22 12:22:01 +00:00
suke 3a8d8654f7 * win32ole.c: add RDoc style comment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6274 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-05-08 03:54:51 +00:00
matz 919f456de8 * exception message clean-up by Ian Macdonald <ian@caliban.org>.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@6044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-03-29 07:54:38 +00:00
eban 953caaf959 * ext/win32ole/win32ole.c: need to include <olectl.h> on Cygwin.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-18 08:22:18 +00:00
suke d780328362 add IDispatch wrapper in val2variant
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-02-15 06:53:15 +00:00
usa 879da80895 * ext/win32ole/win32ole.c (set_argv): fix condition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-27 01:35:53 +00:00
nobu 6e0b3ca606 * ext/extmk.rb: Makefiles should depend on also rbconfig.rb.
(ruby-bugs:PR#1256)

* ext/win32ole/win32ole.c (set_argv): set real arguments to
  WIN32OLE::ARGV.  [ruby-list:39073]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2004-01-26 02:35:30 +00:00
matz 8ef5da3be1 consistent parentheses in assignment RHS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4790 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-16 17:47:19 +00:00
eban 5d0f8cdc6f * ext/win32ole/extconf.rb: check "windows.h", not "windows".
[ruby-talk:84051]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@4747 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2003-10-12 05:46:59 +00:00