Project

General

Profile

Bug #12156

TckImage.new broken after r53077 (2.3, trunk)

Added by zeha (Christian Hofstaedtler) almost 3 years ago. Updated over 2 years ago.

Status:
Rejected
Priority:
Normal
Target version:
-
ruby -v:
ruby 2.3.0p0 (2015-12-25) [x86_64-linux-gnu] (Debian 2.3.0-4)
[ruby-core:74213]

Description

This simple test program fails with ruby2.3, but worked in previous versions:

require 'tk'
require 'tkextlib/tkimg'

root = TkRoot.new
canvas = TkCanvas.new root
canvas.grid :column => 0, :row => 0
img = TkPhotoImage.new :file => "/tmp/l.png"
TkcImage.new canvas, 0, 0, :anchor => :nw, :image => img
Tk.mainloop

Backtrace:

/usr/lib/ruby/2.3.0/tk/itemconfig.rb:115:in `hash_kv': wrong argument
type nil (expected Array) (TypeError)
from /usr/lib/ruby/2.3.0/tk/itemconfig.rb:115:in `itemconfig_hash_kv'
from /usr/lib/ruby/2.3.0/tk/canvas.rb:722:in `_parse_create_args'
from /usr/lib/ruby/2.3.0/tk/canvas.rb:735:in `create'
from /usr/lib/ruby/2.3.0/tk/canvas.rb:758:in `create_self'
from /usr/lib/ruby/2.3.0/tk/canvas.rb:751:in `initialize'
from ui.rb:8:in `new'
from ui.rb:8:in `<main>'

From what I can tell itemconfig_hash_kv calls tk_hash_kv with args 2 and 3 set to nil, but the new Check_Type introduced in r53077 call does not account for Qnil in there.

History

#1 [ruby-core:74235] Updated by hsbt (Hiroshi SHIBATA) almost 3 years ago

  • Status changed from Open to Assigned
  • Assignee set to nagai (Hidetoshi Nagai)

#2 [ruby-core:76938] Updated by hsbt (Hiroshi SHIBATA) over 2 years ago

  • Status changed from Assigned to Rejected

tk has been extracted https://github.com/ruby/tk from stdlib

Also available in: Atom PDF