From b022fb114da100fca2e4ab68ffed7dad8670f3ad Mon Sep 17 00:00:00 2001 From: vsr Date: Tue, 20 May 2014 17:29:29 +0400 Subject: [PATCH] Update patch for ParaView 4.1: add fix for issue 0022593: [CEA 1175] PARAVIS segmentation fault --- config_files/patches/ParaView-4.1.0.patch | 131 +++++++++++++--------- 1 file changed, 76 insertions(+), 55 deletions(-) diff --git a/config_files/patches/ParaView-4.1.0.patch b/config_files/patches/ParaView-4.1.0.patch index 87da8a5..3e68c10 100644 --- a/config_files/patches/ParaView-4.1.0.patch +++ b/config_files/patches/ParaView-4.1.0.patch @@ -1,6 +1,6 @@ diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/CMakeLists.txt ParaView-4.1.0_SRC-new/CMakeLists.txt --- ParaView-4.1.0_SRC-orig/CMakeLists.txt 2014-01-11 17:59:57.000000000 +0400 -+++ ParaView-4.1.0_SRC-new/CMakeLists.txt 2014-05-05 12:30:42.000000000 +0400 ++++ ParaView-4.1.0_SRC-new/CMakeLists.txt 2014-05-20 17:23:20.000000000 +0400 @@ -511,7 +511,7 @@ #---------------------------------------------------------------------------------- @@ -10,9 +10,74 @@ diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/CMakeLists.txt ParaView-4.1.0_S "Disable Python Threads support" FORCE) set(VTK_WRAP_PYTHON ${PARAVIEW_ENABLE_PYTHON} CACHE INTERNAL "Should VTK Python wrapping be built?" FORCE) +diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/ParaViewCore/ClientServerCore/Core/vtkPVPluginLoader.cxx ParaView-4.1.0_SRC-new/ParaViewCore/ClientServerCore/Core/vtkPVPluginLoader.cxx +--- ParaView-4.1.0_SRC-orig/ParaViewCore/ClientServerCore/Core/vtkPVPluginLoader.cxx 2014-01-11 17:59:57.000000000 +0400 ++++ ParaView-4.1.0_SRC-new/ParaViewCore/ClientServerCore/Core/vtkPVPluginLoader.cxx 2014-05-20 17:23:20.000000000 +0400 +@@ -42,6 +42,13 @@ + #define vtkPVPluginLoaderErrorMacro(x)\ + if (!no_errors) {vtkErrorMacro(<< x);} this->SetErrorString(x); + ++ ++#if defined(_WIN32) && !defined(__CYGWIN__) ++const char ENV_PATH_SEP=';'; ++#else ++const char ENV_PATH_SEP=':'; ++#endif ++ + namespace + { + // This is an helper class used for plugins constructed from XMLs. +@@ -195,7 +202,7 @@ + appDir += "/plugins"; + if(paths.size()) + { +- paths += ";"; ++ paths += ENV_PATH_SEP/*";"*/; + } + paths += appDir; + } +@@ -227,10 +234,15 @@ + << this->SearchPaths); + + std::vector paths; +- vtksys::SystemTools::Split(this->SearchPaths, paths, ';'); ++ vtksys::SystemTools::Split(this->SearchPaths, paths, ENV_PATH_SEP/*';'*/); + for (size_t cc=0; cc < paths.size(); cc++) + { +- this->LoadPluginsFromPath(paths[cc].c_str()); ++ std::vector subpaths; ++ vtksys::SystemTools::Split(paths[cc].c_str(), subpaths, ';'); ++ for (size_t scc=0; scc < subpaths.size(); scc++) ++ { ++ this->LoadPluginsFromPath(subpaths[scc].c_str()); ++ } + } + #else + vtkPVPluginLoaderDebugMacro( +diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/ParaViewCore/ClientServerCore/Core/vtkSession.cxx ParaView-4.1.0_SRC-new/ParaViewCore/ClientServerCore/Core/vtkSession.cxx +--- ParaView-4.1.0_SRC-orig/ParaViewCore/ClientServerCore/Core/vtkSession.cxx 2014-01-11 17:59:57.000000000 +0400 ++++ ParaView-4.1.0_SRC-new/ParaViewCore/ClientServerCore/Core/vtkSession.cxx 2014-05-20 17:23:20.000000000 +0400 +@@ -30,13 +30,15 @@ + //---------------------------------------------------------------------------- + void vtkSession::Activate() + { +- vtkProcessModule::GetProcessModule()->PushActiveSession(this); ++ if(vtkProcessModule::GetProcessModule()) ++ vtkProcessModule::GetProcessModule()->PushActiveSession(this); + } + + //---------------------------------------------------------------------------- + void vtkSession::DeActivate() + { +- vtkProcessModule::GetProcessModule()->PopActiveSession(this); ++ if(vtkProcessModule::GetProcessModule()) ++ vtkProcessModule::GetProcessModule()->PopActiveSession(this); + } + + //---------------------------------------------------------------------------- diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/ParaViewCore/ServerManager/Rendering/vtkSMPVRepresentationProxy.cxx ParaView-4.1.0_SRC-new/ParaViewCore/ServerManager/Rendering/vtkSMPVRepresentationProxy.cxx --- ParaView-4.1.0_SRC-orig/ParaViewCore/ServerManager/Rendering/vtkSMPVRepresentationProxy.cxx 2014-01-11 17:59:57.000000000 +0400 -+++ ParaView-4.1.0_SRC-new/ParaViewCore/ServerManager/Rendering/vtkSMPVRepresentationProxy.cxx 2014-05-05 12:30:57.000000000 +0400 ++++ ParaView-4.1.0_SRC-new/ParaViewCore/ServerManager/Rendering/vtkSMPVRepresentationProxy.cxx 2014-05-20 17:23:20.000000000 +0400 @@ -276,7 +276,7 @@ { if (!info) @@ -24,7 +89,7 @@ diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/ParaViewCore/ServerManager/Rend diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/ParaViewCore/VTKExtensions/Default/vtkPVImageReader.h ParaView-4.1.0_SRC-new/ParaViewCore/VTKExtensions/Default/vtkPVImageReader.h --- ParaView-4.1.0_SRC-orig/ParaViewCore/VTKExtensions/Default/vtkPVImageReader.h 2014-01-11 17:59:57.000000000 +0400 -+++ ParaView-4.1.0_SRC-new/ParaViewCore/VTKExtensions/Default/vtkPVImageReader.h 2014-05-05 12:30:42.000000000 +0400 ++++ ParaView-4.1.0_SRC-new/ParaViewCore/VTKExtensions/Default/vtkPVImageReader.h 2014-05-20 17:23:20.000000000 +0400 @@ -19,27 +19,15 @@ #include "vtkPVVTKExtensionsDefaultModule.h" //needed for exports @@ -57,7 +122,7 @@ diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/ParaViewCore/VTKExtensions/Defa diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/Qt/Python/pqPythonManager.cxx ParaView-4.1.0_SRC-new/Qt/Python/pqPythonManager.cxx --- ParaView-4.1.0_SRC-orig/Qt/Python/pqPythonManager.cxx 2014-01-11 18:00:00.000000000 +0400 -+++ ParaView-4.1.0_SRC-new/Qt/Python/pqPythonManager.cxx 2014-05-05 12:30:42.000000000 +0400 ++++ ParaView-4.1.0_SRC-new/Qt/Python/pqPythonManager.cxx 2014-05-20 17:23:20.000000000 +0400 @@ -139,7 +139,7 @@ // initialized (by a startup plugin, for example) if (vtkPythonInterpreter::IsInitialized()) @@ -69,7 +134,7 @@ diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/Qt/Python/pqPythonManager.cxx P ~pqInternal() diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/VTK/Common/Core/vtkCharArray.h ParaView-4.1.0_SRC-new/VTK/Common/Core/vtkCharArray.h --- ParaView-4.1.0_SRC-orig/VTK/Common/Core/vtkCharArray.h 2014-01-11 18:02:05.000000000 +0400 -+++ ParaView-4.1.0_SRC-new/VTK/Common/Core/vtkCharArray.h 2014-05-05 12:30:42.000000000 +0400 ++++ ParaView-4.1.0_SRC-new/VTK/Common/Core/vtkCharArray.h 2014-05-20 17:23:20.000000000 +0400 @@ -48,7 +48,26 @@ // make up the interface of vtkDataArrayTemplate, which is ignored // by the wrappers. @@ -100,7 +165,7 @@ diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/VTK/Common/Core/vtkCharArray.h // Description: diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/VTK/Rendering/Matplotlib/vtkMatplotlibMathTextUtilities.cxx ParaView-4.1.0_SRC-new/VTK/Rendering/Matplotlib/vtkMatplotlibMathTextUtilities.cxx --- ParaView-4.1.0_SRC-orig/VTK/Rendering/Matplotlib/vtkMatplotlibMathTextUtilities.cxx 2014-01-11 18:02:10.000000000 +0400 -+++ ParaView-4.1.0_SRC-new/VTK/Rendering/Matplotlib/vtkMatplotlibMathTextUtilities.cxx 2014-05-05 12:30:42.000000000 +0400 ++++ ParaView-4.1.0_SRC-new/VTK/Rendering/Matplotlib/vtkMatplotlibMathTextUtilities.cxx 2014-05-20 17:23:20.000000000 +0400 @@ -74,7 +74,7 @@ //---------------------------------------------------------------------------- vtkMatplotlibMathTextUtilities::Availablity @@ -112,7 +177,7 @@ diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/VTK/Rendering/Matplotlib/vtkMat // is defined in the environment. Use vtkGenericWarningMacro to allow this to diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/VTK/Utilities/Python/vtkPython.h ParaView-4.1.0_SRC-new/VTK/Utilities/Python/vtkPython.h --- ParaView-4.1.0_SRC-orig/VTK/Utilities/Python/vtkPython.h 2014-01-11 18:02:13.000000000 +0400 -+++ ParaView-4.1.0_SRC-new/VTK/Utilities/Python/vtkPython.h 2014-05-05 12:30:42.000000000 +0400 ++++ ParaView-4.1.0_SRC-new/VTK/Utilities/Python/vtkPython.h 2014-05-20 17:23:20.000000000 +0400 @@ -87,4 +87,14 @@ #error "Python.h is different version from what VTK was configured with!!" #endif @@ -130,7 +195,7 @@ diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/VTK/Utilities/Python/vtkPython. #endif diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/VTK/Utilities/PythonInterpreter/vtkPythonInteractiveInterpreter.cxx ParaView-4.1.0_SRC-new/VTK/Utilities/PythonInterpreter/vtkPythonInteractiveInterpreter.cxx --- ParaView-4.1.0_SRC-orig/VTK/Utilities/PythonInterpreter/vtkPythonInteractiveInterpreter.cxx 2014-01-11 18:02:13.000000000 +0400 -+++ ParaView-4.1.0_SRC-new/VTK/Utilities/PythonInterpreter/vtkPythonInteractiveInterpreter.cxx 2014-05-05 12:30:42.000000000 +0400 ++++ ParaView-4.1.0_SRC-new/VTK/Utilities/PythonInterpreter/vtkPythonInteractiveInterpreter.cxx 2014-05-20 17:23:20.000000000 +0400 @@ -45,6 +45,7 @@ void CleanupPythonObjects() @@ -213,7 +278,7 @@ diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/VTK/Utilities/PythonInterpreter diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/VTK/Utilities/PythonInterpreter/vtkPythonInterpreter.cxx ParaView-4.1.0_SRC-new/VTK/Utilities/PythonInterpreter/vtkPythonInterpreter.cxx --- ParaView-4.1.0_SRC-orig/VTK/Utilities/PythonInterpreter/vtkPythonInterpreter.cxx 2014-01-11 18:02:13.000000000 +0400 -+++ ParaView-4.1.0_SRC-new/VTK/Utilities/PythonInterpreter/vtkPythonInterpreter.cxx 2014-05-05 12:30:42.000000000 +0400 ++++ ParaView-4.1.0_SRC-new/VTK/Utilities/PythonInterpreter/vtkPythonInterpreter.cxx 2014-05-20 17:23:20.000000000 +0400 @@ -60,10 +60,12 @@ inline void vtkPrependPythonPath(const char* pathtoadd) @@ -303,7 +368,7 @@ diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/VTK/Utilities/PythonInterpreter //---------------------------------------------------------------------------- diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/VTK/Wrapping/PythonCore/vtkPythonCommand.cxx ParaView-4.1.0_SRC-new/VTK/Wrapping/PythonCore/vtkPythonCommand.cxx --- ParaView-4.1.0_SRC-orig/VTK/Wrapping/PythonCore/vtkPythonCommand.cxx 2014-01-11 18:02:14.000000000 +0400 -+++ ParaView-4.1.0_SRC-new/VTK/Wrapping/PythonCore/vtkPythonCommand.cxx 2014-05-05 12:30:42.000000000 +0400 ++++ ParaView-4.1.0_SRC-new/VTK/Wrapping/PythonCore/vtkPythonCommand.cxx 2014-05-20 17:23:20.000000000 +0400 @@ -30,14 +30,18 @@ vtkPythonUtil::UnRegisterPythonCommand(this); if (this->obj && Py_IsInitialized()) @@ -357,7 +422,7 @@ diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/VTK/Wrapping/PythonCore/vtkPyth #if (PY_MAJOR_VERSION > 2) || \ diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/Wrapping/Python/paraview/servermanager.py ParaView-4.1.0_SRC-new/Wrapping/Python/paraview/servermanager.py --- ParaView-4.1.0_SRC-orig/Wrapping/Python/paraview/servermanager.py 2014-01-11 18:00:00.000000000 +0400 -+++ ParaView-4.1.0_SRC-new/Wrapping/Python/paraview/servermanager.py 2014-05-05 12:30:57.000000000 +0400 ++++ ParaView-4.1.0_SRC-new/Wrapping/Python/paraview/servermanager.py 2014-05-20 17:23:20.000000000 +0400 @@ -1095,7 +1095,7 @@ property = self.SMProperty nElems = property.GetNumberOfElements() @@ -367,47 +432,3 @@ diff -Naur --exclude=CVS ParaView-4.1.0_SRC-orig/Wrapping/Python/paraview/server self.__arrays = [] for i in range(0, nElems, 2): if self.GetElement(i+1) != '0': -diff -Naur ParaView-4.1.0_SRC-orig/ParaViewCore/ClientServerCore/Core/vtkPVPluginLoader.cxx ParaView-4.1.0_SRC-new/ParaViewCore/ClientServerCore/Core/vtkPVPluginLoader.cxx ---- ParaView-4.1.0_SRC-orig/ParaViewCore/ClientServerCore/Core/vtkPVPluginLoader.cxx 2014-01-11 17:59:57.000000000 +0400 -+++ ParaView-4.1.0_SRC-new/ParaViewCore/ClientServerCore/Core/vtkPVPluginLoader.cxx 2014-05-08 11:16:16.000000000 +0400 -@@ -42,6 +42,13 @@ - #define vtkPVPluginLoaderErrorMacro(x)\ - if (!no_errors) {vtkErrorMacro(<< x);} this->SetErrorString(x); - -+ -+#if defined(_WIN32) && !defined(__CYGWIN__) -+const char ENV_PATH_SEP=';'; -+#else -+const char ENV_PATH_SEP=':'; -+#endif -+ - namespace - { - // This is an helper class used for plugins constructed from XMLs. -@@ -195,7 +202,7 @@ - appDir += "/plugins"; - if(paths.size()) - { -- paths += ";"; -+ paths += ENV_PATH_SEP/*";"*/; - } - paths += appDir; - } -@@ -227,10 +234,15 @@ - << this->SearchPaths); - - std::vector paths; -- vtksys::SystemTools::Split(this->SearchPaths, paths, ';'); -+ vtksys::SystemTools::Split(this->SearchPaths, paths, ENV_PATH_SEP/*';'*/); - for (size_t cc=0; cc < paths.size(); cc++) - { -- this->LoadPluginsFromPath(paths[cc].c_str()); -+ std::vector subpaths; -+ vtksys::SystemTools::Split(paths[cc].c_str(), subpaths, ';'); -+ for (size_t scc=0; scc < subpaths.size(); scc++) -+ { -+ this->LoadPluginsFromPath(subpaths[scc].c_str()); -+ } - } - #else - vtkPVPluginLoaderDebugMacro( -- 2.39.2