On Thursday 31 August 2006 13:27, Caleb Tennis wrote: > As a bonus: > > The memory leak in the marshall_QString is occurring on a signal/slot > connected like this: > > connect(o1, SIGNAL('sig(QString &)'), o2, SLOT('slt(QString &)') ) > > The leak goes away when I change both of those to "const QString &". > Changing them to just "QString" and the leak seems to persist. Well the code to delete the QString has these rules, which seem a bit arbitrary: fromVALUE (ie Ruby to C++): if(s && m->type().isConst() && m->cleanup()) delete s; ToVALUE (ie C++ to Ruby): if(m->cleanup() || m->type().isStack()) delete s; So I assume in you example 'slt(QString &)' is a C++ slot, and you are emitting the signal in Ruby? Then the code in fromVALUE would be wrong and shouldn't have the 'isConst()' test. -- Richard _______________________________________________ Kde-bindings mailing list Kde-bindings@kde.org https://mail.kde.org/mailman/listinfo/kde-bindings