[Kde-bindings] KDE/kdebindings/ruby/qtruby

Richard Dale Richard_Dale at tipitina.demon.co.uk
Mon Mar 16 17:10:55 UTC 2009


SVN commit 940138 by rdale:

* Make the dispose() method always return nil. Otherwise, when an instance
  is deleted from within irb, it makes irb crash when it tries to run
  run inspect() on the newly deleted value returned by dispose(). Thanks
  to Stefano Crocco for finding the problem.

CCMAIL: kde-bindings at kde.org


 M  +6 -0      ChangeLog  
 M  +2 -2      src/qtruby.cpp  


--- trunk/KDE/kdebindings/ruby/qtruby/ChangeLog #940137:940138
@@ -1,3 +1,9 @@
+2009-03-16  Richard Dale  <richard.j.dale at gmail.com>
+	* Make the dispose() method always return nil. Otherwise, when an instance
+	  is deleted from within irb, it makes irb crash when it tries to run
+	  run inspect() on the newly deleted value returned by dispose(). Thanks
+	  to Stefano Crocco for finding the problem.
+
 2009-03-13  Richard Dale  <richard.j.dale at gmail.com>
 	* Improved the rbqtapi '-s' option
 
--- trunk/KDE/kdebindings/ruby/qtruby/src/qtruby.cpp #940137:940138
@@ -1939,7 +1939,7 @@
 dispose(VALUE self)
 {
     smokeruby_object *o = value_obj_info(self);
-    if(!o || !o->ptr) { return Qnil; }
+    if (o == 0 || o->ptr == 0) { return Qnil; }
 
     const char *className = o->smoke->classes[o->classId].className;
 	if(do_debug & qtdb_gc) printf("Deleting (%s*)%p\n", className, o->ptr);
@@ -1963,7 +1963,7 @@
 	o->ptr = 0;
 	o->allocated = false;
 	
-	return self;
+	return Qnil;
 }
 
 static VALUE



More information about the Kde-bindings mailing list