Преглед изворни кода

[FL-2819] updater: fixed failing backups on /int with empty files in it #1735

Co-authored-by: あく <alleteam@gmail.com>
hedger пре 3 година
родитељ
комит
007a3d295e
2 измењених фајлова са 2 додато и 2 уклоњено
  1. 1 0
      lib/toolbox/tar/tar_archive.c
  2. 1 2
      lib/update_util/lfs_backup.c

+ 1 - 0
lib/toolbox/tar/tar_archive.c

@@ -294,6 +294,7 @@ bool tar_archive_add_file(
             break;
         }
 
+        success = true; // if file is empty, that's not an error
         uint16_t bytes_read = 0;
         while((bytes_read = storage_file_read(src_file, file_buffer, FILE_BLOCK_SIZE))) {
             success = tar_archive_file_add_data_block(archive, file_buffer, bytes_read);

+ 1 - 2
lib/update_util/lfs_backup.c

@@ -42,8 +42,7 @@ bool lfs_backup_create(Storage* storage, const char* destination) {
 
 bool lfs_backup_exists(Storage* storage, const char* source) {
     const char* final_source = source && strlen(source) ? source : LFS_BACKUP_DEFAULT_LOCATION;
-    FileInfo fi;
-    return storage_common_stat(storage, final_source, &fi) == FSE_OK;
+    return storage_common_stat(storage, final_source, NULL) == FSE_OK;
 }
 
 bool lfs_backup_unpack(Storage* storage, const char* source) {