Skip to content
Snippets Groups Projects
  1. Apr 26, 2012
    • Brad King's avatar
      KWSys: Fix SystemTools environment memory handling (#13156) · 48aeb751
      Brad King authored
      The SystemTools::PutEnv function tries to provide the "putenv" API
      without leaking memory.  However, the kwsysDeletingCharVector singleton
      frees memory that may still be referenced by the environment table,
      having been placed there by putenv.  If any static destruction or
      processing by an external tool happens after the singleton is destroyed
      and accesses the environment it will read invalid memory.
      
      Replace use of putenv with setenv/unsetenv when available.  The latter
      manage internal copies of the values passed instead of referencing the
      original memory.  When setenv/unsetenv are not available use putenv with
      a singleton that removes its values from the environment before freeing
      their memory.  This requires an "unputenv" implementation.  On at least
      some platforms it must be written in terms of "putenv" because other
      APIs are not available and direct modification of the "environ" global
      is not safe (e.g. on Windows there is interaction with "wenviron").
      Fortunately either putenv("A=") or putenv("A") will remove "A" from the
      environment on these platforms.  On other platforms fall back to direct
      manipulation of "environ".
      
      Also add UnPutEnv to the API and add a test for the behavior of both.
      48aeb751
  2. Apr 23, 2012
    • Brad King's avatar
      KWSys: Remove DateStamp · a3659a0d
      Brad King authored
      KWSys is no longer shared in projects via a server-side directory
      symlink in CVS.  An automated nightly date stamp commit can no longer be
      shared by multiple projects directly.  It needs a per-project replay
      robot so the nightly commits end up needing N+1 robots instead of N.
      Remove the DateStamp feature because it is no longer useful or
      maintained by nightly commits.
      a3659a0d
  3. Dec 15, 2011
  4. Nov 13, 2011
  5. Nov 01, 2011
    • Brad King's avatar
      KWSys: Address Intel compiler remarks · e4d5f91e
      Brad King authored
      CommandLineArguments.cxx:
       remark #181: argument is incompatible with corresponding format
        string conversion
      
      SystemInformation.cxx:
       remark #193: zero used for undefined preprocessing identifier "_WIN32"
       warning #177: variable "Regebx" was declared but never referenced
      
      SystemTools.cxx(375):
       remark #444: destructor for base class "std::vector<char*>" is not virtual
        class kwsysDeletingCharVector : private kwsys_stl::vector<char*>
      
      Author: Hans Johnson <hans-johnson@uiowa.edu>
      Change-Id: Ibc899c3ba14990158ef7bbabace4b435b22495c3
      e4d5f91e
  6. Oct 24, 2011
  7. Sep 06, 2011
    • David Cole's avatar
      KWSys: Add symlinks to directories as files (#12284) · 1ecd1ab6
      David Cole authored
      
      This behaviour was previously broken; regardless of the
      RecurseThroughSymLinks value, symlinks to directories were
      NEVER added as files in the results.
      
      When RecurseThroughSymLinks is ON, symlinks to directories
      should be recursed as if they were the actual directories
      to gather the files within.
      
      However, when RecurseThroughSymLinks is OFF, symlinks to
      directories should be returned as files in the result.
      
      Inspired-by: default avatarJohan Björk <phb@spotify.com>
      1ecd1ab6
    • David Cole's avatar
      KWSys: Remove always-true dir_only parameter · bbbfe083
      David Cole authored
      Its presence confuses, and, since it is always true, is useless.
      bbbfe083
  8. Sep 01, 2011
  9. Aug 20, 2011
  10. Aug 09, 2011
    • Brad King's avatar
      KWSys: __int64 and long long may be same type in specialization · c0c07358
      Brad King authored
      For the specialization of hash<>(), the types long long and __int64
      may be the same type. While the CMakeLists indicate that if __int64 is
      a alias for another type the it will not be enabled, on mingw they
      both appear to be the same type and enabled.
      
      This patch only enable specialization for long long OR __int64 to
      avoid the potential conflict.
      
      Author: Bradley Lowekamp <blowekamp@mail.nih.gov>
      Change-Id: I813a9ac008b296fab5a369c48e6dd5460fd0c035
      c0c07358
  11. Aug 08, 2011
  12. Aug 04, 2011
  13. Aug 03, 2011
  14. Jun 19, 2011
  15. May 09, 2011
  16. Apr 13, 2011
    • Brad King's avatar
      KWSys: Remove unused CheckCXXSourceRuns cmake module · af059ea0
      Brad King authored
      This file has not been used in KWSys since commit "Moved test for large
      file support into kwsysPlatformCxxTests.cxx", 2006-08-25.  CMake 2.6.0
      and above come with a copy of this module anyway, and KWSys has required
      CMake 2.6.3 since commit "KWSys: Require at least CMake 2.6.3",
      2011-03-01.
      af059ea0
  17. Mar 29, 2011
  18. Mar 23, 2011
  19. Mar 01, 2011
  20. Jan 10, 2011
  21. Jan 07, 2011
    • David Cole's avatar
      Fix WOW64 registry mode on Windows 2000 (#10759) · 885bc3c9
      David Cole authored
      
      CMake fails to find any registry paths on Windows 2000: according to regmon
      it fails with an access denied error. I double checked all the access rights
      and they are fine. After checking the access modes on MSDN I found that it
      says KEY_WOW64_32KEY / KEY_WOW64_64KEY are not supported on Windows 2000.
      CMake does not check if the current system supports Wow64 before applying
      these flags.
      
      This commit adds a check for IsWow64Process in kernel32.dll before adding
      these flags.
      
      Author: Axel Gembe <ago@bastart.eu.org>
      Signed-off-by: default avatarAxel Gembe <ago@bastart.eu.org>
      885bc3c9
  22. Jan 05, 2011
  23. Jan 03, 2011
  24. Dec 28, 2010
  25. Dec 21, 2010
  26. Dec 14, 2010
    • Brad King's avatar
      KWSys: Do not mangle UNC paths in ConvertToUnixOutputPath (#10206) · 6f76e7eb
      Brad King authored
      This method replaces '//' with '/' to make the paths look nicer.
      Originally it correctly skipped a leading '//' in a UNC path as the
      comment says.  However, commit "Removed extra variable initializations"
      (2005-04-15) accidentally removed the "pos=1" initializer.  It was then
      incorrectly restored by commit "Added missing variable initialization"
      (2005-04-15) as just "pos=0".  Restore the proper initializer.
      
      The test for this added by commit "better coverage" (2006-07-31)
      included incorrect output for a sample UNC-like path.  Fix it.
      6f76e7eb
    • Brad King's avatar
      KWSys: Use EXPORT name only if installing library · 4adca755
      Brad King authored
      Do not set KWSYS_INSTALL_LIBRARY_RULE just because the parent project set
      KWSYS_INSTALL_EXPORT_NAME.  Require KWSYS_INSTALL_LIB_DIR to be set too.
      4adca755
  27. Dec 08, 2010
    • Brad King's avatar
      KWSys: Remove realpath from SystemTools::GetPath (#10335) · e84a1190
      Brad King authored
      Commit "merge in changes for beos support" (2006-12-04) added a realpath
      call for every directory parsed out of a PATH-style environment
      variable.  No reason was given in the commit message or comments.
      
      The call incorrectly resolves symlinks in referenced paths.  Remove it.
      If BeOS support really needs it then it can be restored for that
      platform with a full explanation.
      e84a1190
  28. Dec 01, 2010
  29. Nov 09, 2010
  30. Sep 10, 2010
  31. Sep 09, 2010
  32. Sep 08, 2010
  33. Aug 27, 2010
Loading