com gtk/php-gtk: Make GtkTreeModel::iter_next() ret urn the next iterator _without_ changing the input one.: ext/gtk+/gtktreeview.overrides

[email protected] (David Soria Parra) Sat, 05 Nov 2005 04:37:43 +0000
Newsgroups php.gtk.cvs
Message-ID <[email protected]>
Commit:    1005a62cc91cae1d61e4e14b95821f477c475009
Author:    Andrei Zmievski <[email protected]>         Sat, 5 Nov 2005 04:37:43 +0000
Parents:   e7d431708cf2399ae29f204509e3b837f5bbbf3a
Branches:  master

Link:       http://git.php.net/?p=gtk/php-gtk.git;a=commitdiff;h=1005a62cc91cae1d61e4e14b95821f477c475009

Log:
Make GtkTreeModel::iter_next() return the next iterator _without_
changing the input one.

Changed paths:
  M  ext/gtk+/gtktreeview.overrides


Diff:
1005a62cc91cae1d61e4e14b95821f477c475009
diff --git a/ext/gtk+/gtktreeview.overrides b/ext/gtk+/gtktreeview.overrides
index 8781581..21628a8 100644
--- a/ext/gtk+/gtktreeview.overrides
+++ b/ext/gtk+/gtktreeview.overrides
@@ -584,7 +584,7 @@ ZEND_END_ARG_INFO();
 override gtk_tree_model_iter_next
 PHP_METHOD
 {
-    GtkTreeIter *iter;
+    GtkTreeIter iter;
     zval *php_iter;
 
     NOT_STATIC_METHOD();
@@ -592,13 +592,13 @@ PHP_METHOD
     if (!php_gtk_parse_args(ZEND_NUM_ARGS(), "O", &php_iter, gtktreeiter_ce))
         return;
 
-    iter = (GtkTreeIter *) PHPG_GBOXED(php_iter);
+    iter = *(GtkTreeIter *) PHPG_GBOXED(php_iter);
 
-    if (!gtk_tree_model_iter_next(GTK_TREE_MODEL(PHPG_GOBJECT(this_ptr)), iter)) {
-        RETURN_FALSE;
+    if (gtk_tree_model_iter_next(GTK_TREE_MODEL(PHPG_GOBJECT(this_ptr)), &iter)) {
+        phpg_gboxed_new(&return_value, GTK_TYPE_TREE_ITER, &iter, TRUE, TRUE TSRMLS_CC);
+    } else {
+        RETURN_NULL();
     }
-
-    phpg_gboxed_new(&return_value, GTK_TYPE_TREE_ITER, &iter, TRUE, TRUE TSRMLS_CC);
 }
 
 %%