Kevin Ryde wrote:
> With a perl custom treemodel and a perl connected rows-reordered signal,
> there seems to be a gremlin in the way $model->rows_reordered reaches
> the signal handler.  [...
> 
> I wonder if it might be something like
> 
>       * xs/GtkTreeModel.xs (gtk2perl_tree_model_rows_reordered_marshal):
>       Call gtk_tree_model_iter_n_children before building the stack, in case
>       it's a Perl class and calls out to ITER_N_CHILDREN.  This fixes
>       clobbering of instance and treepath args to a Perl rows-reordered
>       handler connected on a Perl model.
>       * t/GtkTreeModelIface.t: Exercise rows-reordered marshalling.

Yeah, I think you're right.  When we call out to
gtk_tree_model_iter_n_children and thus eventually ITER_N_CHILDREN, our local
stack *pointer* is not modified (since it's local), but the actual stack
contents are, and this is what you saw.

Committed to both branches.  Thanks!  (Unfortunately, I didn't see the
ChangeLog entry you wrote up early enough to use it for the commit.  Sorry.)

-- 
Bye,
-Torsten
_______________________________________________
gtk-perl-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gtk-perl-list

Reply via email to