diff options
Diffstat (limited to 'CPP/7zip/UI/GUI/CompressDialog.cpp')
-rwxr-xr-x | CPP/7zip/UI/GUI/CompressDialog.cpp | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/CPP/7zip/UI/GUI/CompressDialog.cpp b/CPP/7zip/UI/GUI/CompressDialog.cpp index 99ac831d..6836f724 100755 --- a/CPP/7zip/UI/GUI/CompressDialog.cpp +++ b/CPP/7zip/UI/GUI/CompressDialog.cpp @@ -12,9 +12,9 @@ #include "Windows/ResourceString.h" #include "Windows/System.h" -#include "../../FileManager/HelpUtils.h" -#include "../../FileManager/SplitUtils.h" -#include "../../FileManager/FormatUtils.h" +#include "../FileManager/HelpUtils.h" +#include "../FileManager/SplitUtils.h" +#include "../FileManager/FormatUtils.h" #include "../Explorer/MyMessages.h" @@ -27,10 +27,10 @@ extern bool g_IsNT; #endif #ifdef LANG -#include "../../FileManager/LangUtils.h" +#include "../FileManager/LangUtils.h" #endif -#include "../Resource/CompressDialog/resource.h" +#include "CompressDialogRes.h" #define MY_SIZE_OF_ARRAY(x) (sizeof(x) / sizeof(x[0])) @@ -536,7 +536,7 @@ void CCompressDialog::OnOK() UInt32 solidLogSize = GetBlockSizeSpec(); Info.SolidBlockSize = 0; - if (solidLogSize > 0) + if (solidLogSize > 0 && solidLogSize != (UInt32)-1) Info.SolidBlockSize = (solidLogSize >= 64) ? (UInt64)(Int64)-1 : ((UInt64)1 << solidLogSize); Info.Method = GetMethodSpec(); @@ -1176,6 +1176,10 @@ void CCompressDialog::SetSolidBlockSize() if (!fi.Solid) return; + UInt32 level = GetLevel2(); + if (level == 0) + return; + UInt32 dictionary = GetDictionarySpec(); if (dictionary == UInt32(-1)) dictionary = 1; |