[pygobject] Remove decrementing argument index for failed marshalling cleanup



commit cf4e830f1b613736ef9586562eb6c0b354165925
Author: Simon Feltman <sfeltman src gnome org>
Date:   Wed Jul 30 12:42:15 2014 -0700

    Remove decrementing argument index for failed marshalling cleanup
    
    Remove index decrement when cleanup function is called for failed argument
    marshalling. The decrement is incorrect and causes the failed argument
    cleanup to be skipped. The decrement also causes cleanup for arguments
    prior to the failed argument to receive "was_successful" as FALSE, which
    is also incorrect.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=695128

 gi/pygi-invoke.c |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)
---
diff --git a/gi/pygi-invoke.c b/gi/pygi-invoke.c
index eebf959..6dc93e2 100644
--- a/gi/pygi-invoke.c
+++ b/gi/pygi-invoke.c
@@ -497,7 +497,7 @@ _invoke_marshal_in_args (PyGIInvokeState *state, PyGICallableCache *cache)
                      */
                     pygi_marshal_cleanup_args_from_py_parameter_fail (state,
                                                                       cache,
-                                                                      i - 1);
+                                                                      i);
                     return FALSE;
                 }
 
@@ -516,7 +516,7 @@ _invoke_marshal_in_args (PyGIInvokeState *state, PyGICallableCache *cache)
                                        state->n_py_in_args);
                         pygi_marshal_cleanup_args_from_py_parameter_fail (state,
                                                                           cache,
-                                                                          i - 1);
+                                                                          i);
                         return FALSE;
                     }
 
@@ -550,7 +550,7 @@ _invoke_marshal_in_args (PyGIInvokeState *state, PyGICallableCache *cache)
                                       i, cache->name);
                         pygi_marshal_cleanup_args_from_py_parameter_fail (state,
                                                                           cache,
-                                                                          i - 1);
+                                                                          i);
                         return FALSE;
                     }
                 } else {
@@ -575,7 +575,7 @@ _invoke_marshal_in_args (PyGIInvokeState *state, PyGICallableCache *cache)
 
                  pygi_marshal_cleanup_args_from_py_parameter_fail (state,
                                                                    cache,
-                                                                   i - 1);
+                                                                   i);
                  return FALSE;
             }
             success = arg_cache->from_py_marshaller (state,
@@ -589,7 +589,7 @@ _invoke_marshal_in_args (PyGIInvokeState *state, PyGICallableCache *cache)
             if (!success) {
                 pygi_marshal_cleanup_args_from_py_parameter_fail (state,
                                                                   cache,
-                                                                  i - 1);
+                                                                  i);
                 return FALSE;
             }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]