aboutsummaryrefslogtreecommitdiff
path: root/xmpp-vala/src/core/stanza_writer.vala
diff options
context:
space:
mode:
Diffstat (limited to 'xmpp-vala/src/core/stanza_writer.vala')
-rw-r--r--xmpp-vala/src/core/stanza_writer.vala9
1 files changed, 5 insertions, 4 deletions
diff --git a/xmpp-vala/src/core/stanza_writer.vala b/xmpp-vala/src/core/stanza_writer.vala
index aa94dec9..c2f589df 100644
--- a/xmpp-vala/src/core/stanza_writer.vala
+++ b/xmpp-vala/src/core/stanza_writer.vala
@@ -26,14 +26,15 @@ public class StanzaWriter {
running = true;
try {
yield output.write_all_async(data, 0, null, null);
+ } catch (GLib.Error e) {
+ throw new XmlError.IO(@"IOError in GLib: $(e.message)");
+ } finally {
SourceFuncWrapper? sfw = queue.pop_head();
if (sfw != null) {
sfw.sfun();
+ } else {
+ running = false;
}
- } catch (GLib.Error e) {
- throw new XmlError.IO(@"IOError in GLib: $(e.message)");
- } finally {
- running = false;
}
}
}