[aravis] camera: reverse the order of pixel format display names
- From: Emmanuel Pacaud <emmanuel src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [aravis] camera: reverse the order of pixel format display names
- Date: Wed, 19 Sep 2012 15:34:55 +0000 (UTC)
commit 2de71b11b8c17d65f42bd0bcb4c1f21e332712f2
Author: Jure Varlec <jure varlec ad-vega si>
Date: Wed Sep 19 17:33:19 2012 +0200
camera: reverse the order of pixel format display names
Other functions that return lists construct them by prepending,
but they don't reverse the result.
arv_camera_get_available_pixel_formats_as_display_names is changed
to match this behaviour.
src/arvcamera.c | 14 +++++++++-----
1 files changed, 9 insertions(+), 5 deletions(-)
---
diff --git a/src/arvcamera.c b/src/arvcamera.c
index c3fa165..de3411b 100644
--- a/src/arvcamera.c
+++ b/src/arvcamera.c
@@ -425,6 +425,7 @@ arv_camera_get_available_pixel_formats_as_display_names (ArvCamera *camera, guin
{
ArvGcNode *node;
const GSList *entries, *iter;
+ GSList *available_entries = NULL;
const char **strings;
const char *string = NULL;
gboolean is_available, is_implemented;
@@ -441,9 +442,7 @@ arv_camera_get_available_pixel_formats_as_display_names (ArvCamera *camera, guin
else
return NULL;
- strings = g_new (const char *, g_slist_length ((GSList*)entries));
- i = 0;
- for (iter = entries; iter != NULL; iter = iter->next) {
+ for (i = 0, iter = entries; iter != NULL; iter = iter->next) {
is_available = arv_gc_feature_node_is_available (iter->data, NULL);
is_implemented = arv_gc_feature_node_is_implemented (iter->data, NULL);
if (is_available && is_implemented) {
@@ -451,13 +450,18 @@ arv_camera_get_available_pixel_formats_as_display_names (ArvCamera *camera, guin
if (string == NULL)
string = arv_gc_feature_node_get_name (iter->data);
if (string == NULL) {
- g_free (strings);
+ g_slist_free (available_entries);
return NULL;
}
- strings[i++] = string;
+ available_entries = g_slist_prepend (available_entries, (gpointer)string);
+ i++;
}
}
+ strings = g_new (const char *, i);
+ for (i = 0, iter = available_entries; iter != NULL; iter = iter->next, i++)
+ strings[i] = iter->data;
+
*n_pixel_formats = i;
return strings;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]