]> ToastFreeware Gitweb - gregoa/zavai.git/blobdiff - src/zavai.vala
List log entries
[gregoa/zavai.git] / src / zavai.vala
index ae8c3aa5edcef495c2c35201034c7324b43dce51..29df675775917ad12bb4047c1e2c3fadd2cb73f8 100644 (file)
@@ -44,7 +44,11 @@ static Posix.pid_t is_running()
 static void make_pidfile()
 {
        string pidfile = zavai.config.homedir + "/" + pidfilename + ".pid";
-       FileUtils.set_contents(pidfile, "%d".printf(Posix.getpid()));
+    try {
+        FileUtils.set_contents(pidfile, "%d".printf(Posix.getpid()));
+    } catch (FileError e) {
+        zavai.log.error("Cannot create pidfile " + pidfile + ": " + e.message);
+    }
 }
 
 static void on_kill(int sig)
@@ -75,7 +79,12 @@ static int main (string[] args) {
                        arg_description = null },
                OptionEntry()
        };
-    Gtk.init_with_args(ref args, "", entries, null);
+    try {
+        Gtk.init_with_args(ref args, "", entries, null);
+    } catch (Error e) {
+        zavai.log.error("Cannot init gtk: " + e.message);
+        return 1;
+    }
     Gst.init (ref args);
 
     pidfilename = "zavai";
@@ -268,6 +277,19 @@ static int main (string[] args) {
         zavai.clock.alarm_trigger_queue.enqueue_trigger(alarm);
     }
 
+    if (args.length > 2 && args[1] == "showlog")
+    {
+        string[] z = zavai.log.log.list_entries(false);
+        for (int i = 0; z[i] != null; ++i)
+            stderr.printf("FALSE %s\n", z[i]);
+        z = zavai.log.log.list_entries(true);
+        for (int i = 0; z[i] != null; ++i)
+            stderr.printf("TRUE %s\n", z[i]);
+        zavai.log.Log l = zavai.log.log.load(args[2]);
+        l.dump();
+        return 0;
+    }
+
        if (args.length > 2 && args[1] == "play")
     {
         zavai.audio.musicplayer.play("file://" + args[2]);