Bugs: Browse | Submit New | Admin

[#29672] Error when iterating through Qt::Polygon

Date:
2012-11-26 12:12
Priority:
3
Submitted By:
Martin Holas (kuxv)
Assigned To:
Nobody (None)
Category:
None
State:
Open
Summary:
Error when iterating through Qt::Polygon

Detailed description
Hi,
  the following little piece of code is causing errors


require 'Qt4'

poly = Qt::Polygon.new([Qt::Point.new(1,2),Qt::Point.new(3,4)])
poly.each {|pt| p pt}

The error is:
SystemStackError: stack level too deep
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
... 2536 levels...
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `count'
	from /usr/lib/ruby/site_ruby/1.8/Qt/qtruby4.rb:1636:in `each'

I'm using ruby 1.8.7 (2012-06-29 patchlevel 370) [i686-linux]
qtruby is 4.9.3

Add A Comment: Notepad

Please login


Followup

Message
Date: 2012-12-07 14:56
Sender: Martin Holas

Ok, I found out that code for count() in Qt::Polygon was 
removed. Don't know why. So after adding it back it works 
again. I attached patch for it.

Attached Files:

Name Description Download
add_polygon_count.patch Add count() to Polygon,PolygonF Download

Changes:

Field Old Value Date By
File Added5888: add_polygon_count.patch2012-12-07 14:56kuxv