Skip to content

Commit

Permalink
fix bug: incorrect SQL grammar in ExportManager
Browse files Browse the repository at this point in the history
  • Loading branch information
kelvinjjwong committed Aug 23, 2018
1 parent 1894e2f commit 892957d
Show file tree
Hide file tree
Showing 3 changed files with 39 additions and 11 deletions.
Binary file not shown.
6 changes: 3 additions & 3 deletions ImageDocker/Domain/ModelStore.swift
Original file line number Diff line number Diff line change
Expand Up @@ -471,7 +471,7 @@ class ModelStore {
do {
let db = try DatabasePool(path: dbfile)
try db.read { db in
result = try Image.filter(sql: "hidden != 1 AND (updateDateTimeDate > ? OR updateExifDate > ? OR updateLocationDate > ? OR updateEventDate > ? OR exporTime is null)", arguments:StatementArguments([date, date, date, date])).order([Column("photoTakenDate").asc, Column("filename").asc]).fetchAll(db)
result = try Image.filter(sql: "hidden != 1 AND (updateDateTimeDate > ? OR updateExifDate > ? OR updateLocationDate > ? OR updateEventDate > ? OR exportTime is null)", arguments:StatementArguments([date, date, date, date])).order([Column("photoTakenDate").asc, Column("filename").asc]).fetchAll(db)
}
}catch{
print(error)
Expand All @@ -484,7 +484,7 @@ class ModelStore {
do {
let db = try DatabasePool(path: dbfile)
try db.read { db in
result = try Image.filter("hidden != 1 AND exporTime is not null)").order([Column("photoTakenDate").asc, Column("filename").asc]).fetchAll(db)
result = try Image.filter("hidden != 1 AND exportTime is not null)").order([Column("photoTakenDate").asc, Column("filename").asc]).fetchAll(db)
}
}catch{
print(error)
Expand Down Expand Up @@ -529,7 +529,7 @@ class ModelStore {
do {
let db = try DatabasePool(path: dbfile)
try db.write { db in
try db.execute("UPDATE Image set exportTime = ?, WHERE path=?", arguments: StatementArguments([date, path]))
try db.execute("UPDATE Image set exportTime = ? WHERE path=?", arguments: StatementArguments([date, path]))
}
}catch{
print(error)
Expand Down
44 changes: 36 additions & 8 deletions ImageDocker/Tools/ExportManager.swift
Original file line number Diff line number Diff line change
Expand Up @@ -316,7 +316,7 @@ class ExportManager {
//dataChanged = true
}
if photo.exportAsFilename == nil || filename != photo.exportAsFilename {
ModelStore.default.storeImageExportedTime(path: photo.path, date: Date(), exportedFilename: path)
ModelStore.default.storeImageExportedTime(path: photo.path, date: Date(), exportedFilename: filename)
//photo.exportAsFilename = filename
//photo.exportTime = Date()
//dataChanged = true
Expand Down Expand Up @@ -363,6 +363,7 @@ class ExportManager {
})!

var emptyFolders:[String] = []
var uselessFiles:[String] = []
for case let file as URL in enumerator {
do {

Expand All @@ -379,13 +380,8 @@ class ExportManager {
if !url.isDirectory! {

if filepaths.index(where: { $0 == file.path }) == nil {
print("found useless file \(file.path), delete")
do {
try fm.removeItem(atPath: file.path)
}catch {
print("Cannot delete useless file \(file.path)")
print(error)
}
print("found useless file \(file.path), mark to delete")
uselessFiles.append(file.path)
}
}else {
emptyFolders.append("\(file.path)/")
Expand All @@ -395,8 +391,40 @@ class ExportManager {
print(error)
}
}
if uselessFiles.count > 0 {
for uselessFile in uselessFiles {

// if suppressed from outside, stop immediately
if suppressed {
ExportManager.working = false
DispatchQueue.main.async {
messageBox?.stringValue = ""
}
return
}

print("deleting useless file \(uselessFile)")

do {
try fm.removeItem(atPath: uselessFile)
}catch {
print("Cannot delete useless file \(uselessFile)")
print(error)
}
}
}
for filepath in filepaths {
for folder in emptyFolders {

// if suppressed from outside, stop immediately
if suppressed {
ExportManager.working = false
DispatchQueue.main.async {
messageBox?.stringValue = ""
}
return
}

if filepath.starts(with: folder) {
let i = emptyFolders.index(of: folder)!
emptyFolders.remove(at: i)
Expand Down

0 comments on commit 892957d

Please sign in to comment.