Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-06-03 | SL-10423 Dump path data when missing critical file | andreykproductengine | |
2019-03-01 | Merged in lindenlab/viewer-release | AndreyL ProductEngine | |
2019-01-15 | SL-10291 Replace apr_atomic with standard C++11 functionality | andreykproductengine | |
2019-01-17 | SL-10291 cleanup-mutex | andreykproductengine | |
2019-01-14 | SL-10291 Replace apr_mutex with standard C++11 functionality | andreykproductengine | |
2018-12-15 | SL-10153: auto name{expression} declares an initializer_list | Nat Goodspeed | |
instead of a variable of type decltype(expression). Using SHGetKnownFolderPath(FOLDERID_Fonts) in LLFontGL::getFontPathSystem() requires new Windows #include files. A variable with a constructor can't be declared within the braces of a switch statement, even outside any of its case clauses. | |||
2018-12-14 | SL-10153: Review and rationalize fetching paths from environment. | Nat Goodspeed | |
Use LLStringUtil::getenv() or getoptenv() whenever we fetch a string that will be used as a pathname. Use LLFile::tmpdir() instead of getenv("TEMP"). As an added extra-special bonus, finally clean up $TMP/llcontrol-test-zzzzzz directories that have been accumulating every time we run a local build! | |||
2018-12-11 | SL-10153: Validate APPDATA, LOCALAPPDATA by checking existence. | Nat Goodspeed | |
2018-12-10 | SL-10153: Use a degenerate singleton for PRELOG log file. | Nat Goodspeed | |
The previous build declared a static std::ofstream; but the code that determines the pathname for the log file is called so early that static objects have not yet been constructed. Declare a pointer instead, and instantiate it on demand. | |||
2018-12-08 | SL-10153: Add ole32 to WINDOWS_LIBRARIES so it's everywhere we need. | Nat Goodspeed | |
2018-12-08 | SL-10153: Need ole32 for new Windows call to CoTaskMemFree(). | Nat Goodspeed | |
2018-12-08 | SL-10153: Try to handle non-English non-ASCII Windows APPDATA. | Nat Goodspeed | |
2018-12-06 | SL-10174: LOCALAPPDATA bad? Try SHGetFolderPath(CSIDL_LOCAL_APPDATA). | Nat Goodspeed | |
This logic is essentially copy-and-edited from the same suspenders-and-belt concerning APPDATA and CSIDL_APPDATA for SL-10153. | |||
2018-12-05 | SL-10153: If $APPDATA isn't already good, try SHGetFolderPath(). | Nat Goodspeed | |
In that case, also update $APPDATA for child processes. | |||
2018-10-17 | Automated merge with ssh://bitbucket.org/nat_linden/viewer-poseidon | Nat Goodspeed | |
2018-09-13 | DRTVWR-474: Clean up use of LLDir::getAppRODataDir(), esp. on Mac. | Nat Goodspeed | |
Clearly it's not obvious to maintainers that on the Mac, getAppRODataDir() returns the app's Resources directory: in a number of places the code starts with the executable directory and appends "../Resources" to find that. | |||
2018-09-07 | remove only-partially-successful attempt to put teamcity blocks around targets | Oz Linden | |
2018-09-05 | add more block structure to TeamCity log output for components | Oz Linden | |
2018-08-21 | Don't compare rbegin() iterators, use LLStringUtil::endsWith(). | Nat Goodspeed | |
I think the intention of (sDumpDir.rbegin() == mDirDelimiter.rbegin()) was to test whether sDumpDir endsWith(mDirDelimiter). But those iterators will never be equal. Instead, use LLStringUtil::endsWith(). | |||
2018-03-02 | MAINT-8297 path fix #2 | andreykproductengine | |
2018-03-02 | MAINT-8297 path fix | andreykproductengine | |
2018-03-01 | MAINT-8297 Cleanup | andreykproductengine | |
2018-02-22 | MAINT-8183 Fixed some exit issues and crashes | andreykproductengine | |
2018-02-21 | MAINT-8297 Removing old ca bundle | Andrey Kleshchev | |
2018-02-15 | MAINT-8297 Fixed "Missing CA File" message when running under debugger on ↵ | andreykproductengine | |
windows | |||
2018-02-12 | Merged in lindenlab/viewer-bear | AndreyL ProductEngine | |
2018-01-23 | MAINT-8047 [Mac] Incorrect VFS (cache) creation time is shown in "help>about SL" | maxim_productengine | |
2018-01-17 | merge 5.1.0-release | Oz Linden | |
2017-12-20 | MAINT-8087: Use env vars from VMP for AppData\Roaming and Local. | Nat Goodspeed | |
On Windows, when logged in with a non-ASCII username, every one of the three documented APIs -- SHGetSpecialFolderPath(), SHGetFolderPath() and SHGetKnownFolderPath() -- fails to retrieve any pathname at all. We cannot account for the fact that the oldest of these continues to work with the release viewer and within a Python script (though not, curiously, from a Python interactive session). With a non-ASCII username, they consistently fail when called from an Alex Ivy viewer build: "The filename, directory name, or volume label syntax is incorrect." Empirically, with a non-ASCII username, the preset APPDATA and LOCALAPPDATA environment variables are also useless, e.g. c:\Users\??????\AppData\Roaming where those are, yup, actual question marks. Empirically, the VMP is able to successfully call SHGetFolderPath() to retrieve both AppData\Roaming and AppData\Local. Therefore, we make the VMP set the APPDATA and LOCALAPPDATA environment variables to the UTF-8 encoded correct pathnames. Instead of calling SHGetSomethingFolderPath() at all, make LLDir_Win32 retrieve those environment variables. Make LLFile::mkdir() treat "directory already exists" as a success case. Every single call fell into one of two categories: either it didn't check success at all, or it tested specially to exempt errno == EEXIST. Migrate that test into mkdir(); eliminate it from call sites. Make LLDir::append() and add() convenience functions accept variadic arguments. Replace add(add()...) constructs, as well as clumsy concatenations of directory names and getDirDelimiter(), with simple variadic add() calls. | |||
2017-12-14 | MAINT-8087: #include header for CoTaskMemFree() function | Nat Goodspeed | |
which is required to free the pointer returned by SHGetKnownFolderPath(). | |||
2017-12-14 | MAINT-8087: Use SHGetKnownFolderPath(), not SHGetSpecialFolderPath(). | Nat Goodspeed | |
SHGetSpecialFolderPath() is deprecated, and empirically it appears to be failing when the user name contains non-ASCII characters. The relevant Microsoft documentation pages recommend calling SHGetKnownFolderPath() instead. Also, the SHGetSpecialFolderPath() calls had no error checking or reporting, which is why we can only say it "appears to be" failing. Make sure that if SHGetKnownFolderPath() fails, at least we try to tell somebody about it. | |||
2017-10-11 | Automated merge with ssh://bitbucket.org/lindenlab/viewer-release | Nat Goodspeed | |
2017-10-11 | merge changes for 5.0.8-release | Oz Linden | |
2017-08-23 | merge changes for 5.0.7-release | Oz Linden | |
2017-08-16 | merge changes for DRTVWR-439 | Oz Linden | |
2017-08-18 | MAINT-7691 Fixed cache not clearing correctly and incapability to find dump ↵ | andreykproductengine | |
files in case of unicode path | |||
2017-05-23 | merge changes for 5.0.5-release | Oz Linden | |
2017-05-22 | Automated merge with ssh://bitbucket.org/lindenlab/viewer-release | Nat Goodspeed | |
2017-04-19 | MAINT-7074 Fixed ability to escape from skin directory with <icon> | AndreyL ProductEngine | |
2017-02-03 | Automated merge with ssh://bitbucket.org/lindenlab/viewer-release | Nat Goodspeed | |
2017-02-02 | merge changes for 5.0.1-release | Oz Linden | |
2016-12-20 | DRTVWR-418: std::string::find() returns std::string::size_type. | Nat Goodspeed | |
Storing it in a U32 and then comparing it to std::string::npos isn't going to work in 64 bit land. | |||
2017-05-25 | MAINT-5100 Fixed viewer not finding sky files at login | andreykproductengine | |
2016-12-15 | DRTVWR-418: Store std::string::find() result in size_t, not U32. | Nat Goodspeed | |
In a 64-bit build, std::string::npos is way bigger than a U32. | |||
2016-11-16 | merge changes for 4.1.2-release | Oz Linden | |
2016-11-14 | MAINT-6920 More information in About Second Life floater | andreykproductengine | |
2016-07-28 | update CA file name in one place I missed | Oz Linden | |
2016-07-21 | SL-429: Use a new certificate authority bundle based on data from Mozilla | Oz Linden | |
2016-07-05 | MAINT-5388 File "conversation.log" created in users' root directory on Windows | andreykproductengine | |
2015-11-10 | remove execute permission from many files that should not have it | Oz Linden | |