]> wimlib.net Git - wimlib/blobdiff - src/verify.c
mount_image.c: add fallback definitions of RENAME_* constants
[wimlib] / src / verify.c
index fbe48708e4289b8db6735a407f49ba72aab7da60..00da39709733fdc7ce6214262b5b19ea18807102 100644 (file)
@@ -18,7 +18,7 @@
  * details.
  *
  * You should have received a copy of the GNU Lesser General Public License
- * along with this file; if not, see http://www.gnu.org/licenses/.
+ * along with this file; if not, see https://www.gnu.org/licenses/.
  */
 
 #ifdef HAVE_CONFIG_H
@@ -47,24 +47,24 @@ struct verify_blob_list_ctx {
 };
 
 static int
-end_verify_blob(struct blob_descriptor *blob, int status, void *_ctx)
+verify_continue_blob(const struct blob_descriptor *blob, u64 offset,
+                    const void *chunk, size_t size, void *_ctx)
 {
        struct verify_blob_list_ctx *ctx = _ctx;
        union wimlib_progress_info *progress = ctx->progress;
 
-       if (status)
-               return status;
+       if (offset + size == blob->size)
+               progress->verify_streams.completed_streams++;
 
-       progress->verify_streams.completed_streams++;
-       progress->verify_streams.completed_bytes += blob->size;
+       progress->verify_streams.completed_bytes += size;
 
        if (progress->verify_streams.completed_bytes >= ctx->next_progress) {
 
-               status = call_progress(ctx->progfunc,
-                                      WIMLIB_PROGRESS_MSG_VERIFY_STREAMS,
-                                      progress, ctx->progctx);
-               if (status)
-                       return status;
+               int ret = call_progress(ctx->progfunc,
+                                       WIMLIB_PROGRESS_MSG_VERIFY_STREAMS,
+                                       progress, ctx->progctx);
+               if (ret)
+                       return ret;
 
                set_next_progress(progress->verify_streams.completed_bytes,
                                  progress->verify_streams.total_bytes,
@@ -98,7 +98,7 @@ wimlib_verify_wim(WIMStruct *wim, int verify_flags)
        struct verify_blob_list_ctx ctx;
        struct blob_descriptor *blob;
        struct read_blob_callbacks cbs = {
-               .end_blob       = end_verify_blob,
+               .continue_blob  = verify_continue_blob,
                .ctx            = &ctx,
        };