]> granicus.if.org Git - xz/commitdiff
Made the preset numbering more logical in liblzma API.
authorLasse Collin <lasse.collin@tukaani.org>
Tue, 7 Oct 2008 06:40:31 +0000 (09:40 +0300)
committerLasse Collin <lasse.collin@tukaani.org>
Tue, 7 Oct 2008 06:40:31 +0000 (09:40 +0300)
src/liblzma/api/lzma/container.h
src/liblzma/api/lzma/lzma.h
src/liblzma/lzma/lzma_encoder_presets.c
src/lzma/args.c
src/lzma/args.h

index 256bbc69caf9df2d2d8483e35f330f12cf8a16ac..ff640a6cb788b1d67ec786440066cc5ce644f115 100644 (file)
@@ -49,7 +49,7 @@ typedef enum {
                /**<
                 * LZMA2 filter with fast compression (fast in terms of LZMA2).
                 * If you are interested in the exact options used, see
-                * lzma_preset_lzma[0]. Note that the exact options may
+                * lzma_lzma_preset(1). Note that the exact options may
                 * change between liblzma versions.
                 *
                 * At the moment, the command line tool uses these settings
@@ -57,18 +57,18 @@ typedef enum {
                 * may default to some more complex way to determine the
                 * settings used e.g. the type of files being compressed.
                 *
-                * LZMA_EASY_LZMA_2 is equivalent to lzma_preset_lzma[1]
+                * LZMA_EASY_LZMA2_2 is equivalent to lzma_lzma_preset(2)
                 * and so on.
                 */
 
-       LZMA_EASY_LZMA_2    = 2,
-       LZMA_EASY_LZMA_3    = 3,
-       LZMA_EASY_LZMA_4    = 4,
-       LZMA_EASY_LZMA_5    = 5,
-       LZMA_EASY_LZMA_6    = 6,
-       LZMA_EASY_LZMA_7    = 7,
-       LZMA_EASY_LZMA_8    = 8,
-       LZMA_EASY_LZMA_9    = 9,
+       LZMA_EASY_LZMA2_2    = 2,
+       LZMA_EASY_LZMA2_3    = 3,
+       LZMA_EASY_LZMA2_4    = 4,
+       LZMA_EASY_LZMA2_5    = 5,
+       LZMA_EASY_LZMA2_6    = 6,
+       LZMA_EASY_LZMA2_7    = 7,
+       LZMA_EASY_LZMA2_8    = 8,
+       LZMA_EASY_LZMA2_9    = 9,
 } lzma_easy_level;
 
 
index 094667eb84b1b0dd44b5cc63b1c9f73c2a3516aa..5ec563dd8562f10af97d493d30d00e001c5d1693 100644 (file)
@@ -394,7 +394,7 @@ typedef struct {
 /**
  * \brief       Set a compression level preset to lzma_options_lzma structure
  *
- * level = 0 is the fastest and level = 8 is the slowest. These presets match
+ * level = 1 is the fastest and level = 9 is the slowest. These presets match
  * the switches -1 .. -9 of the command line tool.
  *
  * The preset values are subject to changes between liblzma versions.
index 7ef3509e79fcdfb44df6ed4e123aa6fdea256ee8..b48e0698929202d4a84f2e736bd400b9166a5617 100644 (file)
@@ -53,9 +53,10 @@ lzma_lzma_preset(lzma_options_lzma *options, uint32_t level)
 extern LZMA_API lzma_bool
 lzma_lzma_preset(lzma_options_lzma *options, uint32_t level)
 {
-       if (level >= 9)
+       if (level == 0 || level > 9)
                return true;
 
+       --level;
        memzero(options, sizeof(*options));
 
        static const uint8_t shift[9] = { 16, 20, 19, 20, 21, 22, 23, 24, 25 };
index 47ae766ae28ccba0559744a869500f0894bcc2ec..14ccfb6defbe8d1f4ff2ccd35a548344c7f1d411 100644 (file)
@@ -40,13 +40,13 @@ bool opt_keep_original = false;
 bool opt_preserve_name = false;
 
 lzma_check opt_check = LZMA_CHECK_CRC64;
-lzma_filter opt_filters[8];
+lzma_filter opt_filters[LZMA_BLOCK_FILTERS_MAX + 1];
 
 // We don't modify or free() this, but we need to assign it in some
 // non-const pointers.
 const char *stdin_filename = "(stdin)";
 
-static size_t preset_number = 7 - 1;
+static size_t preset_number = 7;
 static bool preset_default = true;
 static size_t filter_count = 0;
 
@@ -178,7 +178,7 @@ parse_real(int argc, char **argv)
 
                case '1': case '2': case '3': case '4':
                case '5': case '6': case '7': case '8': case '9':
-                       preset_number = c - '1';
+                       preset_number = c - '0';
                        preset_default = false;
                        break;
 
@@ -502,7 +502,7 @@ set_compression_settings(void)
        // setting is used.
        if (preset_default) {
                while (memory_usage > opt_memory) {
-                       if (preset_number == 0) {
+                       if (preset_number == 1) {
                                errmsg(V_ERROR, _("Memory usage limit is too "
                                                "small for any internal "
                                                "filter preset"));
index 587b280f2773129777e3f15d431b5601663dea82..8d9cd30625631d64d139edaef52a18263eb9ef91 100644 (file)
@@ -55,7 +55,7 @@ extern enum tool_mode opt_mode;
 extern enum format_type opt_format;
 
 extern lzma_check opt_check;
-extern lzma_filter opt_filters[8];
+extern lzma_filter opt_filters[LZMA_BLOCK_FILTERS_MAX + 1];
 
 extern const char *stdin_filename;