Date: Tuesday, August 23, 2016 @ 22:07:35 Author: anthraxx Revision: 187431
upgpkg: veracrypt 1.18-1 - upstream release - remove upstream patches - fix no-exec-stack patch (line endings) Deleted: veracrypt/trunk/fix-invalid-characters.patch veracrypt/trunk/gcc6.patch veracrypt/trunk/truecrypt-arch-detection.patch --------------------------------+ fix-invalid-characters.patch | 54 ---------------------------------- gcc6.patch | 61 --------------------------------------- truecrypt-arch-detection.patch | 15 --------- 3 files changed, 130 deletions(-) Deleted: fix-invalid-characters.patch =================================================================== --- fix-invalid-characters.patch 2016-08-23 22:06:36 UTC (rev 187430) +++ fix-invalid-characters.patch 2016-08-23 22:07:35 UTC (rev 187431) @@ -1,54 +0,0 @@ -From 646679da4d79bf7f8af22c44c7ae8498086a88a6 Mon Sep 17 00:00:00 2001 -From: Mounir IDRASSI <[email protected]> -Date: Fri, 18 Mar 2016 16:25:48 +0100 -Subject: [PATCH] Linux: Completely fix gcc-5 "Invalid characters encountered" - issue on mount. It was caused by an issue of gcc-5 STL implementation that is - causing char* pointers retrieved from std::string using c_str method to - become invalid in the child of a child process (after two fork calls). The - workaround is to first copy the std:string values in the child before calling - the second fork. - ---- - src/Platform/Unix/Process.cpp | 24 ++++++++++++++++++++++-- - 1 file changed, 22 insertions(+), 2 deletions(-) - -diff --git a/src/Platform/Unix/Process.cpp b/src/Platform/Unix/Process.cpp -index 388bda6..0770364 100644 ---- a/src/Platform/Unix/Process.cpp -+++ b/src/Platform/Unix/Process.cpp -@@ -53,13 +53,33 @@ namespace VeraCrypt - try - { - int argIndex = 0; -+ /* Workaround for gcc 5.X issue related to the use of STL (string and list) with muliple fork calls. -+ * -+ * The char* pointers retrieved from the elements of parameter "arguments" are no longer valid after -+ * a second fork is called. "arguments" was created in the parent of the current child process. -+ * -+ * The only solution is to copy the elements of "arguments" parameter in a local string array on this -+ * child process and then use char* pointers retrieved from this local copies before calling fork. -+ * -+ * gcc 4.x doesn't suffer from this issue. -+ * -+ */ -+ string argsCopy[array_capacity (args)]; - if (!execFunctor) -- args[argIndex++] = const_cast <char*> (processName.c_str()); -+ { -+ argsCopy[argIndex++] = processName; -+ } - - foreach (const string &arg, arguments) - { -- args[argIndex++] = const_cast <char*> (arg.c_str()); -+ argsCopy[argIndex++] = arg; - } -+ -+ for (int i = 0; i < argIndex; i++) -+ { -+ args[i] = const_cast <char*> (argsCopy[i].c_str()); -+ } -+ - args[argIndex] = nullptr; - - if (inputData) Deleted: gcc6.patch =================================================================== --- gcc6.patch 2016-08-23 22:06:36 UTC (rev 187430) +++ gcc6.patch 2016-08-23 22:07:35 UTC (rev 187431) @@ -1,61 +0,0 @@ ---- Main/Resources.cpp 2016-05-16 16:47:35.846462041 +0200 -+++ Main/Resources.cpp 2016-05-16 17:12:21.838202520 +0200 -@@ -45,13 +45,13 @@ - strBuf.CopyFrom (res); - return string (reinterpret_cast <char *> (strBuf.Ptr())); - #else -- static const char LanguageXml[] = -+ static byte LanguageXml[] = - { - # include "Common/Language.xml.h" - , 0 - }; - -- return string (LanguageXml); -+ return string ((const char*) LanguageXml); - #endif - } - -@@ -64,13 +64,13 @@ - strBuf.CopyFrom (res); - return string (reinterpret_cast <char *> (strBuf.Ptr())); - #else -- static const char License[] = -+ static byte License[] = - { - # include "License.txt.h" - , 0 - }; - -- return string (License); -+ return string ((const char*) License); - #endif - } - ---- Main/Forms/PreferencesDialog.cpp 2016-05-16 17:14:47.704707908 +0200 -+++ Main/Forms/PreferencesDialog.cpp 2016-05-16 17:15:56.927964437 +0200 -@@ -414,11 +414,11 @@ - libExtension = wxDynamicLibrary::CanonicalizeName (L"x"); - - #ifdef TC_MACOSX -- extensions.push_back (make_pair (L"dylib", LangString["DLL_FILES"])); -+ extensions.push_back (make_pair (L"dylib", static_cast<const wchar_t*>(LangString["DLL_FILES"].wc_str()))); - #endif - if (!libExtension.empty()) - { -- extensions.push_back (make_pair (libExtension.Mid (libExtension.find (L'.') + 1), LangString["DLL_FILES"])); -+ extensions.push_back (make_pair (static_cast<const wchar_t*>(libExtension.Mid (libExtension.find (L'.') + 1).wc_str()), static_cast<const wchar_t*>(LangString["DLL_FILES"].wc_str()))); - extensions.push_back (make_pair (L"*", L"")); - } - ---- Main/GraphicUserInterface.cpp 2016-05-16 17:16:38.724591342 +0200 -+++ Main/GraphicUserInterface.cpp 2016-05-16 17:17:09.854562653 +0200 -@@ -1445,7 +1445,7 @@ - FilePath GraphicUserInterface::SelectVolumeFile (wxWindow *parent, bool saveMode, const DirectoryPath &directory) const - { - list < pair <wstring, wstring> > extensions; -- extensions.push_back (make_pair (L"tc", LangString["TC_VOLUMES"])); -+ extensions.push_back (make_pair (L"tc", static_cast<const wchar_t*>(LangString["TC_VOLUMES"].wc_str()))); - - FilePathList selFiles = Gui->SelectFiles (parent, LangString[saveMode ? "OPEN_NEW_VOLUME" : "OPEN_VOL_TITLE"], saveMode, false, extensions, directory); - Deleted: truecrypt-arch-detection.patch =================================================================== --- truecrypt-arch-detection.patch 2016-08-23 22:06:36 UTC (rev 187430) +++ truecrypt-arch-detection.patch 2016-08-23 22:07:35 UTC (rev 187431) @@ -1,15 +0,0 @@ -diff -urN truecrypt-7.0a-source/Makefile truecrypt-7.0a-source.fixed/Makefile ---- truecrypt-7.0a-source/Makefile 2010-09-05 10:32:10.000000000 -0400 -+++ truecrypt-7.0a-source.fixed/Makefile 2011-07-05 21:41:50.296437879 -0400 -@@ -120,10 +120,7 @@ - - export CPU_ARCH ?= unknown - --ARCH = $(shell uname -p) --ifeq "$(ARCH)" "unknown" -- ARCH = $(shell uname -m) --endif -+ARCH = $(shell uname -m) - - ifneq (,$(filter i386 i486 i586 i686 x86,$(ARCH))) - CPU_ARCH = x86
