diff options
author | Aura Linden <aura@lindenlab.com> | 2012-12-18 13:30:21 -0800 |
---|---|---|
committer | Aura Linden <aura@lindenlab.com> | 2012-12-18 13:30:21 -0800 |
commit | a9a21ecffa52ad0e53000c4fdd94569c50022889 (patch) | |
tree | e3c873aaa65d6c366905f8d0032000d145027df3 | |
parent | b6abf5c0ee964ced6b8aa25872db597d3f024bfd (diff) |
Switched mkTempDir back to using apple standard tempdir behavior instead of /tmp
-rw-r--r-- | indra/mac_updater/MacUpdaterAppDelegate.mm | 23 | ||||
-rw-r--r-- | indra/mac_updater/mac_updater.cpp | 14 |
2 files changed, 23 insertions, 14 deletions
diff --git a/indra/mac_updater/MacUpdaterAppDelegate.mm b/indra/mac_updater/MacUpdaterAppDelegate.mm index b6f95eef7e..4457419a94 100644 --- a/indra/mac_updater/MacUpdaterAppDelegate.mm +++ b/indra/mac_updater/MacUpdaterAppDelegate.mm @@ -124,6 +124,29 @@ void sendProgress(int cur, int max, const std::string str) setProgressText(str); } +bool mkTempDir(boost::filesystem::path& temp_dir) +{ + NSString * tempDir = NSTemporaryDirectory(); + if (tempDir == nil) + tempDir = @"/tmp/"; + + std::string* temp_str = NSToString(tempDir); + *temp_str += std::string("SecondLifeUpdate_XXXXXX"); + + std::cout << "tempDir is " << temp_str << std::endl; + + char temp[PATH_MAX] = ""; /* Flawfinder: ignore */ + strncpy(temp, temp_str->c_str(), temp_str->length()); + + if(mkdtemp(temp) == NULL) + { + return false; + } + + temp_dir = boost::filesystem::path(temp); + + return true; +} bool copyDir(const std::string& src_dir, const std::string& dest_dir) { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; diff --git a/indra/mac_updater/mac_updater.cpp b/indra/mac_updater/mac_updater.cpp index fc9565d63d..bc9fec3558 100644 --- a/indra/mac_updater/mac_updater.cpp +++ b/indra/mac_updater/mac_updater.cpp @@ -494,20 +494,6 @@ bool LLMacUpdater::doInstall(const boost::filesystem::path& app_dir, return true; } -bool mkTempDir(boost::filesystem::path& temp_dir) -{ - char temp_str[PATH_MAX] = "/tmp/SecondLifeUpdate_XXXXXX"; - - if(mkdtemp(temp_str) == NULL) - { - return false; - } - - temp_dir = boost::filesystem::path(temp_str); - - return true; -} - void* LLMacUpdater::updatethreadproc(void*) { char tempDir[PATH_MAX] = ""; /* Flawfinder: ignore */ |