Project

General

Profile

Actions

Bug #12156

closed

TckImage.new broken after r53077 (2.3, trunk)

Added by zeha (Christian Hofstaedtler) about 8 years ago. Updated over 7 years ago.

Status:
Rejected
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.

Actions

Also available in: Atom PDF

Like0
Like0Like0