mirror of
https://git.tukaani.org/xz.git
synced 2024-04-04 12:36:23 +02:00
Select the default integrity check type at runtime.
Previously it was set statically to CRC64 or CRC32 depending on options passed to the configure script.
This commit is contained in:
parent
96a4f840e3
commit
34eb5e201d
1 changed files with 14 additions and 5 deletions
|
@ -56,17 +56,17 @@ static bool preset_default = true;
|
||||||
static bool preset_extreme = false;
|
static bool preset_extreme = false;
|
||||||
|
|
||||||
/// Integrity check type
|
/// Integrity check type
|
||||||
#ifdef HAVE_CHECK_CRC64
|
static lzma_check check;
|
||||||
static lzma_check check = LZMA_CHECK_CRC64;
|
|
||||||
#else
|
/// This becomes false if the --check=CHECK option is used.
|
||||||
static lzma_check check = LZMA_CHECK_CRC32;
|
static bool check_default = true;
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
extern void
|
extern void
|
||||||
coder_set_check(lzma_check new_check)
|
coder_set_check(lzma_check new_check)
|
||||||
{
|
{
|
||||||
check = new_check;
|
check = new_check;
|
||||||
|
check_default = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -265,6 +265,15 @@ coder_set_compression_settings(void)
|
||||||
opt_threads = thread_limit;
|
opt_threads = thread_limit;
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
if (check_default) {
|
||||||
|
// The default check type is CRC64, but fallback to CRC32
|
||||||
|
// if CRC64 isn't supported by the copy of liblzma we are
|
||||||
|
// using. CRC32 is always supported.
|
||||||
|
check = LZMA_CHECK_CRC64;
|
||||||
|
if (!lzma_check_is_supported(check))
|
||||||
|
check = LZMA_CHECK_CRC32;
|
||||||
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue