ctx->pathbuf.Length += ctx->target_ntpath.Length + sizeof(wchar_t);
ctx->pathbuf.Buffer[ctx->pathbuf.Length / sizeof(wchar_t)] = L'\0';
- wimlib_assert(ctx->pathbuf.Length >= 8 &&
+ wimlib_assert(ctx->pathbuf.Length >= 4 * sizeof(wchar_t) &&
!wmemcmp(ctx->pathbuf.Buffer, L"\\??\\", 4));
ctx->pathbuf.Buffer[1] = L'\\';
dentry = list_first_entry(&ctx->reparse_dentries,
struct wim_dentry, tmp_list);
build_extraction_path(dentry, ctx);
- ERROR("Invalid reparse point", current_path(ctx));
+ ERROR("Reparse data of \"%ls\" has size "
+ "%"PRIu64" bytes (exceeds %u bytes)",
+ current_path(ctx), stream->size,
+ REPARSE_DATA_MAX_SIZE);
return WIMLIB_ERR_INVALID_REPARSE_DATA;
}
/* In the WIM format, reparse streams are just the reparse data