[libpeas/implement-interfaces: 5/5] Use stack-allocation for GArgument arrays.
- From: Steve Frécinaux <sfre src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libpeas/implement-interfaces: 5/5] Use stack-allocation for GArgument arrays.
- Date: Tue, 31 Aug 2010 22:24:08 +0000 (UTC)
commit 4d2d5e944589a0cfc8ffa470784143e046e4486c
Author: Steve Frécinaux <code istique net>
Date: Wed Sep 1 00:22:35 2010 +0200
Use stack-allocation for GArgument arrays.
libpeas/peas-extension-set.c | 9 ++-------
libpeas/peas-extension.c | 4 +---
libpeas/peas-introspection.c | 6 ++----
3 files changed, 5 insertions(+), 14 deletions(-)
---
diff --git a/libpeas/peas-extension-set.c b/libpeas/peas-extension-set.c
index ea5a19e..8da6c27 100644
--- a/libpeas/peas-extension-set.c
+++ b/libpeas/peas-extension-set.c
@@ -497,20 +497,15 @@ peas_extension_set_call_valist (PeasExtensionSet *set,
{
GICallableInfo *callable_info;
GArgument *args;
- gboolean ret;
g_return_val_if_fail (PEAS_IS_EXTENSION_SET (set), FALSE);
g_return_val_if_fail (method_name != NULL, FALSE);
callable_info = peas_gi_get_method_info (set->priv->exten_type, method_name);
- args = g_new (GArgument, g_callable_info_get_n_args (callable_info));
+ args = g_newa (GArgument, g_callable_info_get_n_args (callable_info));
peas_gi_valist_to_arguments (callable_info, va_args, args, NULL);
- ret = peas_extension_set_callv (set, method_name, args);
-
- g_free (args);
-
- return ret;
+ return peas_extension_set_callv (set, method_name, args);
}
/**
diff --git a/libpeas/peas-extension.c b/libpeas/peas-extension.c
index 9deb1a5..3ce22e7 100644
--- a/libpeas/peas-extension.c
+++ b/libpeas/peas-extension.c
@@ -222,7 +222,7 @@ peas_extension_call_valist (PeasExtension *exten,
g_return_val_if_fail (method_name != NULL, FALSE);
callable_info = peas_gi_get_method_info (exten->priv->exten_type, method_name);
- gargs = g_new (GArgument, g_callable_info_get_n_args (callable_info));
+ gargs = g_newa (GArgument, g_callable_info_get_n_args (callable_info));
peas_gi_valist_to_arguments (callable_info, args, gargs, &retval_ptr);
ret = peas_extension_callv (exten, method_name, gargs, &retval);
@@ -234,8 +234,6 @@ peas_extension_call_valist (PeasExtension *exten,
g_base_info_unref ((GIBaseInfo *) retval_info);
}
- g_free (gargs);
-
return ret;
}
diff --git a/libpeas/peas-introspection.c b/libpeas/peas-introspection.c
index 040d83c..55ed3dd 100644
--- a/libpeas/peas-introspection.c
+++ b/libpeas/peas-introspection.c
@@ -360,8 +360,8 @@ peas_method_apply (GObject *instance,
n_in_args = 0;
n_out_args = 0;
- in_args = g_new0 (GArgument, n_args + 1);
- out_args = g_new0 (GArgument, n_args);
+ in_args = g_newa (GArgument, n_args + 1);
+ out_args = g_newa (GArgument, n_args);
peas_gi_split_in_and_out_arguments (func_info, args,
in_args+1, &n_in_args,
@@ -385,8 +385,6 @@ peas_method_apply (GObject *instance,
}
out:
- g_free (in_args);
- g_free (out_args);
g_base_info_unref ((GIBaseInfo *) func_info);
return ret;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]