summaryrefslogtreecommitdiffstats
path: root/gst-libs
diff options
context:
space:
mode:
authorBenjamin Otte <otte@gnome.org>2005-06-06 15:41:52 +0000
committerBenjamin Otte <otte@gnome.org>2005-06-06 15:41:52 +0000
commit7a07f4b0a52b17ccdc3e551385c6f593f5157ca8 (patch)
treeed6b8d6ac6ae55266f497aacb0f807118020cf56 /gst-libs
parent36ae8816f22e82245b94161318cb152a00da0f25 (diff)
downloadgst-plugins-bad-7a07f4b0a52b17ccdc3e551385c6f593f5157ca8.tar.gz
gst-plugins-bad-7a07f4b0a52b17ccdc3e551385c6f593f5157ca8.tar.bz2
gst-plugins-bad-7a07f4b0a52b17ccdc3e551385c6f593f5157ca8.zip
gst-libs/gst/audio/multichannel.c: revert my patch from 2005-06-01. I confused arrays and lists.
Original commit message from CVS: * gst-libs/gst/audio/multichannel.c: (gst_audio_set_structure_channel_positions_list): revert my patch from 2005-06-01. I confused arrays and lists.
Diffstat (limited to 'gst-libs')
-rw-r--r--gst-libs/gst/audio/multichannel.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/gst-libs/gst/audio/multichannel.c b/gst-libs/gst/audio/multichannel.c
index 61d7403e..67c055d9 100644
--- a/gst-libs/gst/audio/multichannel.c
+++ b/gst-libs/gst/audio/multichannel.c
@@ -256,7 +256,7 @@ void
gst_audio_set_structure_channel_positions_list (GstStructure * str,
const GstAudioChannelPosition * pos, gint num_positions)
{
- gint channels, c;
+ gint channels, n, c;
GValue pos_val_arr = { 0 }, pos_val_list = {
0}, pos_val_entry = {
0};
@@ -278,13 +278,15 @@ gst_audio_set_structure_channel_positions_list (GstStructure * str,
/* create the array of lists */
g_value_init (&pos_val_arr, GST_TYPE_FIXED_LIST);
g_value_init (&pos_val_entry, GST_TYPE_AUDIO_CHANNEL_POSITION);
- g_value_init (&pos_val_list, GST_TYPE_LIST);
- for (c = 0; c < num_positions; c++) {
- g_value_set_enum (&pos_val_entry, pos[c]);
- gst_value_list_append_value (&pos_val_list, &pos_val_entry);
+ for (n = 0; n < channels; n++) {
+ g_value_init (&pos_val_list, GST_TYPE_LIST);
+ for (c = 0; c < num_positions; c++) {
+ g_value_set_enum (&pos_val_entry, pos[c]);
+ gst_value_list_append_value (&pos_val_list, &pos_val_entry);
+ }
+ gst_value_list_append_value (&pos_val_arr, &pos_val_list);
+ g_value_unset (&pos_val_list);
}
- gst_value_list_append_value (&pos_val_arr, &pos_val_list);
- g_value_unset (&pos_val_list);
g_value_unset (&pos_val_entry);
gst_structure_set_value (str, GST_AUDIO_CHANNEL_POSITIONS_PROPERTY_NAME,
&pos_val_arr);