diff options
Diffstat (limited to 'src/Backend/Backend.vala')
-rw-r--r-- | src/Backend/Backend.vala | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/src/Backend/Backend.vala b/src/Backend/Backend.vala index 578aae0c..c452b1cd 100644 --- a/src/Backend/Backend.vala +++ b/src/Backend/Backend.vala @@ -865,14 +865,20 @@ namespace FeedReader { } } - string errmsg; - bool success = FeedServer.get_default().addFeed(feedURL, catID, newCatName, out feedID, out errmsg); - errmsg = success ? "" : errmsg; - feedAdded(!success, errmsg); - if(success) - { - startSync(); - } + asyncPayload pl = () => { + string errmsg; + bool success = FeedServer.get_default().addFeed(feedURL, catID, newCatName, out feedID, out errmsg); + errmsg = success ? "" : errmsg; + feedAdded(!success, errmsg); + if(success) + { + m_cancellable.reset(); + sync(false, m_cancellable); + } + }; + callAsync.begin((owned)pl, (obj, res) => { + callAsync.end(res); + }); } public void removeFeed(string feedID) |