diff options
-rw-r--r-- | ChangeLog | 6 | ||||
m--------- | common | 0 | ||||
-rw-r--r-- | gst-libs/gst/audio/multichannel.c | 16 |
3 files changed, 15 insertions, 7 deletions
@@ -1,3 +1,9 @@ +2005-06-06 Benjamin Otte <in7y118@public.uni-hamburg.de> + + * 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. + 2005-06-03 Ronald S. Bultje <rbultje@ronald.bitfreak.net> * ext/cdparanoia/gstcdparanoia.c: (set_track), (cdparanoia_event): diff --git a/common b/common -Subproject 67b7e6c0db99415e0440d0c576495641b53e976 +Subproject 495d6e30b3e513aebbc98467707c609c49ea654 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); |