profile: Add mtime function to manga profile.
[automanga.git] / automanga
index bb6c4d5..01710e4 100755 (executable)
--- a/automanga
+++ b/automanga
@@ -1,12 +1,9 @@
 #!/usr/bin/python3
 
-import sys, getopt
+import sys, getopt, pathlib
 import manga.lib, manga.reader, manga.profile, manga.local
 from gi.repository import Gtk, Gdk, GObject
 
-GObject.threads_init()
-Gdk.threads_init()
-
 def usage(out):
     out.write("usage: automanga [-h] [-p PROFILE] {DIRECTORY|-l LIBRARY ID|-a ALIAS}\n")
     out.write("       automanga -a ALIAS=LIBRARY:ID\n")
@@ -84,6 +81,9 @@ def main():
                 except KeyError:
                     sys.stderr.write("%s %s: no longer found\n" % (mprof.libnm, mprof.id))
                     continue
+                except Exception as exc:
+                    sys.stderr.write("%s %s: unexpected error: %s\n" % (mprof.libnm, mprof.id, str(exc)))
+                    continue
                 sys.stdout.write("%s %s: \"%s\"\n" % (mprof.libnm, mprof.id, mng.name))
         return
 
@@ -139,11 +139,11 @@ def main():
     else:
         libname = "local"
         try:
-            if len(args) > 0:
-                mdir = args.pop(0)
-            else:
-                mdir = "."
-            mng = manga.local.manga(mdir)
+            if len(args) < 1:
+                usage(sys.stderr)
+                sys.exit(1)
+            mdir = args.pop(0)
+            mng = manga.local.manga(pathlib.Path(mdir))
         except TypeError:
             sys.stderr.write("automanga: not a valid manga directory: %s\n" % mdir)
             sys.exit(1)