aboutsummaryrefslogtreecommitdiff
path: root/src/liblzma/common/stream_flags_equal.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/liblzma/common/stream_flags_equal.c (renamed from src/liblzma/common/easy_single.c)27
1 files changed, 13 insertions, 14 deletions
diff --git a/src/liblzma/common/easy_single.c b/src/liblzma/common/stream_flags_equal.c
index e2fa4e13..db22567f 100644
--- a/src/liblzma/common/easy_single.c
+++ b/src/liblzma/common/stream_flags_equal.c
@@ -1,7 +1,7 @@
///////////////////////////////////////////////////////////////////////////////
//
-/// \file easy_single.c
-/// \brief Easy Single-Block Stream encoder initialization
+/// \file stream_flags_equal.c
+/// \brief Compare Stream Header and Stream Footer
//
// Copyright (C) 2008 Lasse Collin
//
@@ -17,21 +17,20 @@
//
///////////////////////////////////////////////////////////////////////////////
-#include "easy_common.h"
+#include "common.h"
-extern LZMA_API lzma_ret
-lzma_easy_encoder_single(lzma_stream *strm, lzma_easy_level level)
+extern LZMA_API lzma_bool
+lzma_stream_flags_equal(const lzma_stream_flags *a, lzma_stream_flags *b)
{
- lzma_options_stream opt_stream = {
- .check = LZMA_CHECK_CRC32,
- .has_crc32 = true,
- .uncompressed_size = LZMA_VLI_VALUE_UNKNOWN,
- .alignment = 0,
- };
+ if (a->check != b->check)
+ return false;
- if (lzma_easy_set_filters(opt_stream.filters, level))
- return LZMA_HEADER_ERROR;
+ // Backward Sizes are compared only if they are known in both.
+ if (a->backward_size != LZMA_VLI_VALUE_UNKNOWN
+ && b->backward_size != LZMA_VLI_VALUE_UNKNOWN
+ && a->backward_size != b->backward_size)
+ return false;
- return lzma_stream_encoder_single(strm, &opt_stream);
+ return true;
}