diff options
| author | Debi King (Dessie) <dessie@lindenlab.com> | 2011-07-25 11:56:49 -0400 | 
|---|---|---|
| committer | Debi King (Dessie) <dessie@lindenlab.com> | 2011-07-25 11:56:49 -0400 | 
| commit | 6a15da0133aac12f3223d91078d133d50e7d44ee (patch) | |
| tree | fadafea4c31ed6c56560cd2126214486a231ab6d /indra/llvfs | |
| parent | 0e3cea49aaba7fb9e4a75c4a76779ba9273549bf (diff) | |
| parent | 723d05e6df1d89b8957aca429b1328834f323150 (diff) | |
merged .hgtags
Diffstat (limited to 'indra/llvfs')
| -rw-r--r-- | indra/llvfs/lldiriterator.cpp | 20 | 
1 files changed, 16 insertions, 4 deletions
| diff --git a/indra/llvfs/lldiriterator.cpp b/indra/llvfs/lldiriterator.cpp index 25550321f0..ff92cbb7fd 100644 --- a/indra/llvfs/lldiriterator.cpp +++ b/indra/llvfs/lldiriterator.cpp @@ -52,8 +52,20 @@ LLDirIterator::Impl::Impl(const std::string &dirname, const std::string &mask)  {  	fs::path dir_path(dirname); -	// Check if path exists. -	if (!fs::exists(dir_path)) +	bool is_dir = false; + +	// Check if path is a directory. +	try +	{ +		is_dir = fs::is_directory(dir_path); +	} +	catch (fs::basic_filesystem_error<fs::path>& e) +	{ +		llwarns << e.what() << llendl; +		return; +	} + +	if (!is_dir)  	{  		llwarns << "Invalid path: \"" << dir_path.string() << "\"" << llendl;  		return; @@ -66,7 +78,7 @@ LLDirIterator::Impl::Impl(const std::string &dirname, const std::string &mask)  	}  	catch (fs::basic_filesystem_error<fs::path>& e)  	{ -		llerrs << e.what() << llendl; +		llwarns << e.what() << llendl;  		return;  	} @@ -82,7 +94,7 @@ LLDirIterator::Impl::Impl(const std::string &dirname, const std::string &mask)  	}  	catch (boost::regex_error& e)  	{ -		llerrs << "\"" << exp << "\" is not a valid regular expression: " +		llwarns << "\"" << exp << "\" is not a valid regular expression: "  				<< e.what() << llendl;  		return;  	} | 
