[rhythmbox] podcast: fix parsed podcast data double free
- From: Jonathan Matthew <jmatthew src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [rhythmbox] podcast: fix parsed podcast data double free
- Date: Mon, 21 Jul 2014 13:58:37 +0000 (UTC)
commit df6a04a906d27b9db4f0dc6e9abe49cacdff405c
Author: Jonathan Matthew <jonathan d14n org>
Date: Mon Jul 21 23:56:06 2014 +1000
podcast: fix parsed podcast data double free
When we think we're parsing an existing feed, free the parsed data
if it doesn't match up with anything in the feed list. Otherwise,
create episodes if it's the currently selected feed. The logic here
was a bit messed up.
https://bugzilla.gnome.org/show_bug.cgi?id=733499
podcast/rb-podcast-add-dialog.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
---
diff --git a/podcast/rb-podcast-add-dialog.c b/podcast/rb-podcast-add-dialog.c
index 93e481c..ea8a2d3 100644
--- a/podcast/rb-podcast-add-dialog.c
+++ b/podcast/rb-podcast-add-dialog.c
@@ -328,7 +328,9 @@ parse_finished (ParseThreadData *data)
}
/* if the row is selected, create entries for the channel contents */
- if (data->dialog->priv->have_selection && found) {
+ if (found == FALSE) {
+ rb_podcast_parse_channel_free (data->channel);
+ } else if (data->dialog->priv->have_selection) {
GtkTreePath *a;
GtkTreePath *b;
@@ -340,8 +342,6 @@ parse_finished (ParseThreadData *data)
gtk_tree_path_free (a);
gtk_tree_path_free (b);
- } else {
- rb_podcast_parse_channel_free (data->channel);
}
} else {
/* model owns data->channel now */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]