Unbounded huh?

I found a bug with Shoes 3.2 and versions of Ruby > 1.9.1. Actually I found a boat load of ‘huh?’ questions. I happen to have a copy of Shoes r1314 source (Shoes 3, maybe 3.1). It took a few minutes with the (single!) rakefile to get it to compile x86_64, ruby 1.9.1. samples/class-book.rb works. It doesn’t work on Shoes 3.2 – it segfaults if shoes 3.2 and the script are started from the command line. If you run the script from the splash screen ‘open an app’ like then you get a Shoes console message. Grrr.

Either way you get to app.c:372 and app.c:316 and rb_cUnboundMethod as it tries to process ‘/’ at startup if the Shoes derived class has defined ‘url x,:y’ paths. I happen to have my ytm (yield to maturity) Shoes app and I thought it should work. It doesn’t for the same reason that class-book doesn’t.

It has every thing to do with rb_cUnboundMethod. Do a google search and the top items are Shoes posts from back in the Ruby 1.8.5 days. Oh my! There just aren’t that many C programs that embed Ruby to have built much of a Google knowledge base. I think I know the intent of the code but I’ll bet I haven’t thought it through deep enough to replace it with something that works.

Leave a Reply

Your email address will not be published. Required fields are marked *