From c2a4fa3134e9636c72f84050d0e663f2615618f2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jakub=20Sko=C5=99epa?= <jakub@skorepa.info>
Date: Wed, 26 Aug 2015 18:21:33 +0200
Subject: [PATCH] Fixed disappearing messages

---
 dserial-cli/src/dbus-serial-client.vala | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/dserial-cli/src/dbus-serial-client.vala b/dserial-cli/src/dbus-serial-client.vala
index fef765d..8be8bb9 100644
--- a/dserial-cli/src/dbus-serial-client.vala
+++ b/dserial-cli/src/dbus-serial-client.vala
@@ -24,6 +24,8 @@ namespace Serial {
 
 [DBus (name = "info.skorepa.DSerial1.port")]
 private interface Methods : GLib.Object {
+    [DBus (name = "Write")]
+    public abstract void write_sync(uint8[] msg) throws IOError;
 	public abstract async void write(uint8[] msg) throws IOError;
 	public abstract void open() throws IOError;
 	public abstract void close() throws IOError;
@@ -304,8 +306,11 @@ public class SerialClient : GLib.Object {
 	/*=====================================
 	 * Message sender
 	 *=====================================*/
-	public void write(uint8[] msg) {
-        methods.write.begin(msg,()=>{});
+	public void write(uint8[] msg, bool asynchronous = false) {
+        if(asynchronous) methods.write.begin(msg,()=>{});
+        else try {
+            methods.write_sync(msg);
+        } catch (Error e) {}
 	}
 
 	/*=====================================
-- 
GitLab