Переглянути джерело

Merge pull request #23 from bemagri/codex/fix-bug-preventing-new-book-inclusion

Prevent exceptions when copying new books
Bernardo Magri 4 місяців тому
батько
коміт
67e11fcb35
1 змінених файлів з 10 додано та 1 видалено
  1. 10 1
      src/main.pas

+ 10 - 1
src/main.pas

@@ -340,7 +340,16 @@ begin
         fname := fname + ext;
       end;
       dest := IncludeTrailingPathDelimiter(booksDir) + fname;
-      CopyFile(src, dest);
+      // Skip copy if source already resides in booksDir and avoid exceptions on failure
+      if CompareFilenames(src, dest) <> 0 then
+      begin
+        try
+          CopyFile(src, dest);
+        except
+          // fall back to original path if copy fails for any reason
+          dest := src;
+        end;
+      end;
     end;
 
     book:=TBook.Create(PanelBackground);