[niepce] library: add_bundle() return an error if add_file return a negative id



commit 1e79a1e12d9b3885517723dda0c5ab7bc7b601df
Author: Hubert Figuière <hub figuiere net>
Date:   Sat Nov 17 11:02:48 2018 -0500

    library: add_bundle() return an error if add_file return a negative id

 src/engine/db/library.rs | 48 +++++++++++++++++++++++++-----------------------
 1 file changed, 25 insertions(+), 23 deletions(-)
---
diff --git a/src/engine/db/library.rs b/src/engine/db/library.rs
index aa3b1d0..1b4c595 100644
--- a/src/engine/db/library.rs
+++ b/src/engine/db/library.rs
@@ -582,30 +582,32 @@ impl Library {
         manage: Managed,
     ) -> Result<LibraryId> {
         let file_id = self.add_file(folder_id, bundle.main(), manage)?;
-        if file_id > 0 {
-            if !bundle.xmp_sidecar().is_empty() {
-                let fsfile_id = self.add_fs_file(bundle.xmp_sidecar())?;
-                if fsfile_id > 0 {
-                    self.add_xmp_sidecar_to_bundle(file_id, fsfile_id)?;
-                    self.add_sidecar_fsfile_to_bundle(
-                        file_id,
-                        fsfile_id,
-                        Sidecar::Xmp(String::new()).to_int(),
-                        "xmp",
-                    )?;
-                }
+        if file_id <= 0 {
+            err_out!("add_file returned {}", file_id);
+            return Err(Error::InvalidResult);
+        }
+        if !bundle.xmp_sidecar().is_empty() {
+            let fsfile_id = self.add_fs_file(bundle.xmp_sidecar())?;
+            if fsfile_id > 0 {
+                self.add_xmp_sidecar_to_bundle(file_id, fsfile_id)?;
+                self.add_sidecar_fsfile_to_bundle(
+                    file_id,
+                    fsfile_id,
+                    Sidecar::Xmp(String::new()).to_int(),
+                    "xmp",
+                )?;
             }
-            if !bundle.jpeg().is_empty() {
-                let fsfile_id = self.add_fs_file(bundle.jpeg())?;
-                if fsfile_id > 0 {
-                    self.add_jpeg_file_to_bundle(file_id, fsfile_id)?;
-                    self.add_sidecar_fsfile_to_bundle(
-                        file_id,
-                        fsfile_id,
-                        Sidecar::Jpeg(String::new()).to_int(),
-                        "jpg",
-                    )?;
-                }
+        }
+        if !bundle.jpeg().is_empty() {
+            let fsfile_id = self.add_fs_file(bundle.jpeg())?;
+            if fsfile_id > 0 {
+                self.add_jpeg_file_to_bundle(file_id, fsfile_id)?;
+                self.add_sidecar_fsfile_to_bundle(
+                    file_id,
+                    fsfile_id,
+                    Sidecar::Jpeg(String::new()).to_int(),
+                    "jpg",
+                )?;
             }
         }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]