Commit 375bba6e authored by Andy Cedilnik's avatar Andy Cedilnik
Browse files

ENH: Add an accessor for the maximum file length

parent 7210eee9
......@@ -89,6 +89,18 @@ public:
#include <io.h>
#include <direct.h>
#define _unlink unlink
#endif
/* The maximum length of a file name. */
#if defined(PATH_MAX)
# define KWSYS_SYSTEMTOOLS_MAXPATH PATH_MAX
#elif defined(MAXPATHLEN)
# define KWSYS_SYSTEMTOOLS_MAXPATH MAXPATHLEN
#else
# define KWSYS_SYSTEMTOOLS_MAXPATH 16384
#endif
#if defined(_WIN32) && (defined(_MSC_VER) || defined(__BORLANDC__) || defined(__MINGW32__))
inline int Mkdir(const char* dir)
{
return _mkdir(dir);
......@@ -141,15 +153,7 @@ inline int Chdir(const char* dir)
}
inline void Realpath(const char *path, kwsys_stl::string & resolved_path)
{
# ifdef MAXPATHLEN
char resolved_name[MAXPATHLEN];
# else
# ifdef PATH_MAX
char resolved_name[PATH_MAX];
# else
char resolved_name[5024];
# endif //PATH_MAX
# endif //MAXPATHLEN
char resolved_name[KWSYS_SYSTEMTOOLS_MAXPATH];
realpath(path, resolved_name);
resolved_path = resolved_name;
......@@ -196,6 +200,7 @@ class SystemToolsTranslationMap :
{
};
double
SystemTools::GetTime(void)
{
......@@ -1848,6 +1853,13 @@ bool SystemTools::RemoveADirectory(const char* source)
return (Rmdir(source) == 0);
}
/**
*/
size_t SystemTools::GetMaximumFilePathLength()
{
return KWSYS_SYSTEMTOOLS_MAXPATH;
}
/**
* Find the file the given name. Searches the given path and then
* the system search path. Returns the full path to the file if it is
......
......@@ -472,6 +472,11 @@ public:
*/
static bool RemoveADirectory(const char* source);
/**
* Get the maximum full file path length
*/
static size_t GetMaximumFilePathLength();
/**
* Find a file in the system PATH, with optional extra paths
*/
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment