diff options
author | Přemysl Eric Janouch <p@janouch.name> | 2023-12-22 04:35:49 +0100 |
---|---|---|
committer | Přemysl Eric Janouch <p@janouch.name> | 2023-12-22 04:35:49 +0100 |
commit | 0b5d388af213680d0def2c03d3c8814c3e2ceaa2 (patch) | |
tree | 6f0e4792e9374952c2845af84bc94428f59af644 | |
parent | 97737c46f37f76aa80d91c52710e2ca2c3d0ba4f (diff) | |
download | gallery-0b5d388af213680d0def2c03d3c8814c3e2ceaa2.tar.gz gallery-0b5d388af213680d0def2c03d3c8814c3e2ceaa2.tar.xz gallery-0b5d388af213680d0def2c03d3c8814c3e2ceaa2.zip |
WIP: FS to DB sync
-rw-r--r-- | main.go | 18 | ||||
-rw-r--r-- | public/gallery.js | 4 |
2 files changed, 17 insertions, 5 deletions
@@ -1037,7 +1037,12 @@ func syncPostProcess(c *syncContext, info syncFileInfo) error { switch { case info.err != nil: // * → error - return info.err + if ee, ok := info.err.(*exec.ExitError); ok { + syncPrintf(c, "%s: %s", info.fsPath, ee.Stderr) + } else { + return info.err + } + fallthrough case info.sha1 == "": // 0 → 0 @@ -1696,10 +1701,15 @@ func cmdThumbnail(args []string) error { defer taskSemaphore.release() defer wg.Done() if err := makeThumbnailFor(sha1); err != nil { - cancel(err) - } else { - pb.Step() + if ee, ok := err.(*exec.ExitError); ok { + pb.Stop() + log.Printf("%s: %s\n", sha1, ee.Stderr) + pb.Update() + } else { + cancel(err) + } } + pb.Step() }(sha1) } wg.Wait() diff --git a/public/gallery.js b/public/gallery.js index d97a55a..ee11858 100644 --- a/public/gallery.js +++ b/public/gallery.js @@ -14,6 +14,7 @@ let BrowseModel = { path: undefined, subdirectories: [], entries: [], + collator: new Intl.Collator(undefined, {numeric: true}), async reload(path) { if (this.path !== path) { @@ -24,7 +25,8 @@ let BrowseModel = { let resp = await call('browse', {path: path}) this.subdirectories = resp.subdirectories - this.entries = resp.entries + this.entries = resp.entries.sort((a, b) => + this.collator.compare(a.name, b.name)) }, joinPath(parent, child) { |