diff --git a/7zip/MyVersion.h b/7zip/MyVersion.h index 47142ea1..ed14a2fb 100755 --- a/7zip/MyVersion.h +++ b/7zip/MyVersion.h @@ -1,7 +1,7 @@ #define MY_VER_MAJOR 4 -#define MY_VER_MINOR 28 -#define MY_VERSION "4.28 beta" -#define MY_7ZIP_VERSION "7-Zip 4.28 beta" -#define MY_DATE "2005-09-27" +#define MY_VER_MINOR 29 +#define MY_VERSION "4.29 beta" +#define MY_7ZIP_VERSION "7-Zip 4.29 beta" +#define MY_DATE "2005-09-28" #define MY_COPYRIGHT "Copyright (c) 1999-2005 Igor Pavlov" #define MY_VERSION_COPYRIGHT_DATE MY_VERSION " " MY_COPYRIGHT " " MY_DATE diff --git a/Common/String.cpp b/Common/String.cpp index a3d5bed1..7921fe41 100755 --- a/Common/String.cpp +++ b/Common/String.cpp @@ -23,8 +23,11 @@ wchar_t MyCharUpper(wchar_t c) if (res != 0 || ::GetLastError() != ERROR_CALL_NOT_IMPLEMENTED) return (wchar_t)(unsigned int)res; const int kBufferSize = 4; - char s[kBufferSize]; + char s[kBufferSize + 1]; int numChars = ::WideCharToMultiByte(CP_ACP, 0, &c, 1, s, kBufferSize, 0, 0); + if (numChars == 0 || numChars > kBufferSize) + return c; + s[numChars] = 0; ::CharUpperA(s); ::MultiByteToWideChar(CP_ACP, 0, s, numChars, &c, 1); return c; @@ -38,8 +41,11 @@ wchar_t MyCharLower(wchar_t c) if (res != 0 || ::GetLastError() != ERROR_CALL_NOT_IMPLEMENTED) return (wchar_t)(unsigned int)res; const int kBufferSize = 4; - char s[kBufferSize]; + char s[kBufferSize + 1]; int numChars = ::WideCharToMultiByte(CP_ACP, 0, &c, 1, s, kBufferSize, 0, 0); + if (numChars == 0 || numChars > kBufferSize) + return c; + s[numChars] = 0; ::CharLowerA(s); ::MultiByteToWideChar(CP_ACP, 0, s, numChars, &c, 1); return c; diff --git a/DOC/7zip.nsi b/DOC/7zip.nsi index 35264690..7ba39abb 100755 --- a/DOC/7zip.nsi +++ b/DOC/7zip.nsi @@ -2,7 +2,7 @@ ;Defines !define VERSION_MAJOR 4 -!define VERSION_MINOR 28 +!define VERSION_MINOR 29 !define VERSION_POSTFIX_FULL " beta" !ifdef WIN64 !ifdef IA64