Commit graph

646 commits

Author SHA1 Message Date
naruse
3409e318f3 merge revision(s) 54022: [Backport #11893]
* ext/tk/lib/tkextlib/tcllib/tablelist_tile.rb: fix method name typo.
	  [ruby-core:72513] [Bug #11893] The patch provided by Akira Matsuda.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54368 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29 06:05:18 +00:00
naruse
dbb4fc96ff merge revision(s) 54021: [Backport #11891]
* ext/tk/lib/tkextlib/tcllib/toolbar.rb: fix method name typo.
	  [ruby-core:72511] [Bug #11891] The patch provided by Akira Matsuda.
	  [ruby-core:72510] [Bug #11890] The patch provided by Akira Matsuda.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29 06:05:05 +00:00
naruse
653b46e3ab merge revision(s) 54020: [Backport #11890]
* ext/tk/lib/tkextlib/blt/tree.rb: fix method name typo.
	[ruby-core:72510] [Bug #11890] The patch provided by Akira Matsuda.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54366 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29 06:04:50 +00:00
naruse
246ffa87fd merge revision(s) 54018: [Backport #11886]
* ext/tk/lib/tk/menubar.rb: fix a typo in font name. [ruby-core:72505]
	  [Bug #11886] The patch provided by Akira Matsuda.

	* ext/tk/sample/*.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54365 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29 06:04:26 +00:00
naruse
6b73bb455e merge revision(s) 53299: [Backport #11870]
* compile.c, cont.c, doc, man: fix common misspelling.
          [ruby-core:72466] [Bug #11870]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54351 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-03-29 04:49:00 +00:00
naruse
c4fdfabcc8 handle ext/ as r53141
g -L frozen_string_literal ext/**/*.rb|xargs ruby -Ka -e'ARGV.each{|fn|puts
fn;open(fn,"r+"){|f|s=f.read.sub(/\A(#!.*\n)?(#.*coding.*\n)?/,"\\&#
frozen_string_literal: false\n");f.rewind;f.write s}}'

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53143 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-16 05:31:54 +00:00
nobu
cdaa94eab4 tkutil.c: check arg
* ext/tk/tkutil/tkutil.c (tk_hash_kv): check types of array
  argument.  reported by Marcin 'Icewall' Noga of Cisco Talos.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-13 09:26:30 +00:00
nobu
62539b49a7 tkutil.c: array length
* ext/tk/tkutil/tkutil.c (cbsubst_table_setup): check length of
  argument arrays for each access, as callback methods can modify
  them.  reported by Marcin 'Icewall' Noga of Cisco Talos.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53076 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-13 09:25:15 +00:00
nobu
b2d3c6a86f tkutil.c: check args
* ext/tk/tkutil/tkutil.c (cbsubst_table_setup): check types of
  argument elements.  reported by Marcin 'Icewall' Noga of Cisco
  Talos.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53075 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-13 09:23:36 +00:00
hsbt
567eb15df3 * ext/tk/lib/multi-tk.rb: fix typos.
[Bug #11764][ruby-core:71800]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-10 05:13:39 +00:00
nobu
612978edbc ext: use RARRAY_ASET
* ext/socket/socket.c (make_addrinfo): use RARRAY_ASET for
  write-barrier.
* ext/tk/tcltklib.c ({call,eval,invoke}_queue_handler): ditto.
* ext/tk/tkutil/tkutil.c (ary2list, ary2list2): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52456 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-05 01:17:19 +00:00
nobu
d2e48a3f01 tk: RARRAY_AREF
* ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c (RARRAY_AREF): add
  fallback definition.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-05 01:15:45 +00:00
nobu
57e2877e7b ext: use RARRAY_AREF
* ext/**/*.c: prefer RARRAY_AREF to indexing RARRAY_CONST_PTR.
  pointed out by hanmac.
  3553a86 (commitcomment-14187670)

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52453 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-05 01:09:17 +00:00
nobu
0047ab96cd tkutil.c: rb_ary_cat
* ext/tk/tkutil/tkutil.c (rb_ary_cat): fallback definition.
  rb_ary_cat() is available since 2.0.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-04 07:50:34 +00:00
nobu
8df1863dcb tkutil.c: strndup
* ext/tk/tkutil/tkutil.c (strndup): fallback definition.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52449 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-04 07:50:19 +00:00
nobu
3553a86eb5 ext: use RARRAY_CONST_PTR
* ext/bigdecimal/bigdecimal.c: use RARRAY_CONST_PTR just fore
  reference instead of RARRAY_PTR, to keep the array WB-protected.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-11-04 07:27:10 +00:00
nobu
1a2a4084d9 tcltklib.c: basename
* ext/tk/tcltklib.c (setup_rubytkkit): use ruby_enc_find_basename
  if available, instead of File.basename.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52417 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-10-31 23:39:37 +00:00
nobu
9b18348293 tcltklib.c: GC guard
* ext/tk/tcltklib.c (setup_rubytkkit): add GC guard instead of
  volatile.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-10-31 01:25:32 +00:00
kosaki
3a48e12607 * numeric.c: Good-by Borland-C.
* include/ruby/backward/rubyio.h: ditto.
* include/ruby/backward/st.h: ditto.
* include/ruby/backward/util.h: ditto.
* include/ruby/backward/rubysig.h: ditto.
* include/ruby/backward/classext.h: ditto.
* dln.c: ditto.
* gc.c: ditto.
* win32/resource.rb: ditto.
* win32/dir.h: ditto.
* ext/tk/tcltklib.c: ditto.
* NEWS: announce that Borland-C is no longer supported.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52168 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-10-18 02:10:34 +00:00
nobu
dca6009c3e tkutil.c: use local variables
* ext/tk/tkutil/tkutil.c (cbsubst_table_setup): use local
  variables instead of repeating RARRAY_PTR.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-09-27 09:57:58 +00:00
nobu
c97a6987b6 ext/tk: remove $SAFE 2..4 code
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-09-24 01:37:14 +00:00
nobu
a2b8925a94 tcltklib.c: check argument
* ext/tk/tcltklib.c (ip_cancel_eval_core): check argument type and
  length.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-08-02 01:27:31 +00:00
hsbt
415e9cef0d * ext/tk/tcltklib.c: removed deprecated safe level.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51160 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-07-06 09:00:21 +00:00
nobu
8e7393559f tkutil.c: fix out-of-bounds access
* ext/tk/tkutil/tkutil.c (cbsubst_table_setup): check array
  length not access out-of-bounds.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50708 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-06-01 01:55:10 +00:00
nobu
30e6825e1b tkutil.c: fix memory leak and segfault
* ext/tk/tkutil/tkutil.c (cbsubst_append_inf_key): extract a
  function append a key in subst info to a string.  make result
  strings first and get rid of potential memory leak.

* ext/tk/tkutil/tkutil.c (cbsubst_get_subst_arg): allocate the
  result buffer as a string to fix:

  * memory leak when the argument key is not found:

      loop {Tk::Event.subst_arg(:a) rescue nil}

  * buffer overflow segfault when many arguments:

      class T < TkUtil::CallbackSubst
        _setup_subst_table([[?a, ?A, :_a]], [])
        subst_arg(*[:_a]*1000).size
      end

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50704 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-05-31 22:32:14 +00:00
nobu
912ae57b8a tkutil.c: reduce unnecessary buffer
* ext/tk/tkutil/tkutil.c (cbsubst_get_subst_key): reduce
  unnecessary buffer.  the result string is one byte per one word.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50696 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-05-31 15:08:05 +00:00
nobu
fbc67dbf2c tcltklib.c: allocate structs with wrapper
* ext/tk/tcltklib.c (ip_create_slave_core): allocate structs with
  making new wrapper objects and get rid of potential memory leak.

* ext/tk/tkutil/tkutil.c (allocate_cbsubst_info): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-05-28 06:45:55 +00:00
nobu
d50260117f tkutil.c: check arguments type
* ext/tk/tkutil/tkutil.c (cbsubst_get_subst_key): check arguments
  type.  implicit conversion is disabled to get rid of method
  calls which can modify other arguments.

* ext/tk/tkutil/tkutil.c (cbsubst_table_setup): ditto.

* ext/tk/tkutil/tkutil.c (cbsubst_scan_args): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-05-28 06:44:43 +00:00
nobu
0c58f69791 tkutil.c: check type
* ext/tk/tkutil/tkutil.c (cbsubst_get_subst_key): ensure the
  result type of a method call to be an array before accessing by
  RARRAY macros.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-05-28 05:53:05 +00:00
nobu
86f7fceef4 Fix typo in samples for tk ext [skip ci]
* ext/tk/sample/figmemo_sample.rb (open_file),
  ext/tk/sample/tktextio.rb (TkTextIO): fix typo in messages.
  [Fix GH-916]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50653 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-05-27 21:56:04 +00:00
nobu
c83883cf4e tcltklib.c: fix memory leak
* ext/tk/tcltklib.c (ip_init): reject already initialized
  interpreter to fix memory leak.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-05-27 13:36:27 +00:00
nobu
038c0e5a80 ext: suppress warnings
* ext/{etc,openssl,tk}: Adding parens and comparisons around
  assignments to get rid of Wparentheses warnings.  [Fix GH-875]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50346 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-19 03:19:20 +00:00
nobu
c35aa93590 tkutil.c: revert r48250
* ext/tk/tkutil/tkutil.c (Init_tkutil): TkUtil::CallbackSubst and
  TkUtil::CallbackSubst::Info need the default allocator.
  [ruby-list:50115]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50338 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-17 05:07:58 +00:00
hsbt
d9a2b3480e * doc/contributors.rdoc: fix a typo. Patch by @davydovanton
[fix GH-872][ci skip]
* doc/syntax/methods.rdoc: ditto.
* ext/digest/sha2/sha2.c: ditto.
* ext/socket/ipsocket.c: ditto.
* ext/tk/*: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50320 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-15 01:37:47 +00:00
nobu
659f14b254 tkutil.c: fallback rb_id2str
* ext/tk/tkutil/tkutil.c (rb_id2str): add fallback definition.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50310 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-14 03:36:19 +00:00
nobu
0b2554fe7e tkutil.c: use rb_sym2str
* ext/tk/tkutil/tkutil.c (rb_sym2str): use rb_sym2str always but
  not rb_sym_to_s, and fallback to rb_id2str and SYM2ID.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50309 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-14 03:35:54 +00:00
nobu
16294913f7 use rb_funcallv
* use rb_funcallv() for no arguments call instead of variadic
  rb_funcall().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-16 04:08:52 +00:00
hsbt
9f3a95a0c8 * ext/tk/lib/tkextlib/tcllib/plotchart.rb: fix to invoke correct function
of tcllib. Patch by @zalt50 [fix GH-787]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49034 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-12-27 01:11:28 +00:00
nobu
ca24e581ba tcltklib.c: duplicate code
* ext/tk/tcltklib.c (ip_invoke_core): remove probably duplicate
  dead code.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-12-26 06:32:18 +00:00
nobu
d7d1e344f5 tcltklib.c: rb_path2class
* ext/tk/tcltklib.c (ip_ruby_cmd_receiver_const_get): simply use
  rb_path2class() to get a class/module from its name.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-12-26 06:28:29 +00:00
nobu
ed52fa6ef9 tcltklib.c: revert RUBY_UNTYPED_DATA_WARNING
* ext/tk/tcltklib.c (RUBY_UNTYPED_DATA_WARNING): Data_Get_Struct
  is not affected.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48694 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-12-03 04:04:02 +00:00
nobu
c95b3a16bd ruby.h: no warnings of hidden objects
* include/ruby/ruby.h (rb_data_object_alloc_warning): no warnings
  of internal hidden objects which klass == 0.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-12-03 03:25:06 +00:00
nobu
b040788b52 tkutil.c: typed data
* ext/tk/tkutil/tkutil.c (cbsubst_info_type): use typed data.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48691 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-12-03 03:25:02 +00:00
nobu
e3787f8b36 ext/tk/tkutil/tkutil.c: disable untyped data warnings
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48252 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-03 06:22:16 +00:00
nobu
30f69beeba tkutil.c: inherit Data
* ext/tk/tkutil/tkutil.c: use Data as super class, not to inherit
  useless methods.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-03 05:36:29 +00:00
nobu
40cc9231a9 tkutil.c: remove useless branches
* ext/tk/tkutil/tkutil.c (cbsubst_table_setup): remove useless
  branches and get rid of out of bound access.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-30 06:33:11 +00:00
hsbt
36284e2413 * ext/tk/lib/tkextlib/tile/treeview.rb: fix syntax error.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-19 11:06:07 +00:00
nagai
bf0e2520d7 * ext/tk/tcltklib.c: support Tcl/Tk8.6.
* ext/tk/lib/tk.rb: ditto.
* ext/tk/extconf.rb: ditto.
* ext/tk/lib/tk_mac.rb: add new features of Tcl/Tk8.6.
* ext/tk/lib/tkextlib/tile/treeview.rb: ditto.
* ext/tk/lib/tkextlib/tile/fontchooser.rb: add an alias.
* ext/tk/lib/tk/autoload.rb: ditto.
* ext/tk/lib/tkextlib/tcllib/validator.rb: add a new feature of tklib extension.
* ext/tk/lib/tkextlib/tkimg/dted.rb: a new supported format of Img extension.
* ext/tk/lib/tkextlib/tkimg/raw.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-19 08:38:35 +00:00
nagai
7ce520e90a * ext/tk/tcltklib.c: (experimental) support Tcl/Tk8.6.2.
* ext/tk/extconf.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-13 17:32:17 +00:00
nobu
a9c42d1026 tcltklib.c: typed data
* ext/tk/tcltklib.c (tcltkip_type): use typed data.

* ext/tk/tcltklib.c ({call,eval,invoke}_queue_handler): hide
  internal objects.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-09 07:53:59 +00:00