[Kde-bindings] KDE/kdebindings/csharp/qyoto

Richard Dale Richard_Dale at tipitina.demon.co.uk
Fri Dec 19 10:48:26 UTC 2008


SVN commit 898868 by rdale:

* When the construct_copy() function was used to copy and instance, it
  wasn't initializing the binding for the new instance. This caused a
  crash when the destructor for the instance tried to make a callback with
  the null binding. 

CCMAIL: kde-bindings at kde.org



 M  +6 -0      ChangeLog  
 M  +6 -0      src/handlers.cpp  


--- trunk/KDE/kdebindings/csharp/qyoto/ChangeLog #898867:898868
@@ -1,3 +1,9 @@
+2008-12-19  Richard Dale  <richard.j.dale at gmail.com>
+	* When the construct_copy() function was used to copy and instance, it
+	  wasn't initializing the binding for the new instance. This caused a
+	  crash when the destructor for the instance tried to make a callback with
+	  the null binding. 
+
 2008-12-16  Arno Rehn  <arno at arnorehn.de>
 
 	* Make the pointerMap a Hashtable instead of a Dictionary - its implementation
--- trunk/KDE/kdebindings/csharp/qyoto/src/handlers.cpp #898867:898868
@@ -753,6 +753,12 @@
     args[1].s_voidp = o->ptr;
     Smoke::ClassFn fn = o->smoke->classes[o->classId].classFn;
     (*fn)(o->smoke->methods[ccMeth.index].method, 0, args);
+
+    // Initialize the binding for the new instance
+    Smoke::StackItem s[2];
+    s[1].s_voidp = qyoto_modules[o->smoke].binding;
+    (*fn)(0, args[0].s_voidp, s);
+
     return args[0].s_voidp;
 }
 



More information about the Kde-bindings mailing list