- Jan 05, 2021
-
-
Rye Mutt authored
-
- Dec 21, 2020
-
-
Rye Mutt authored
-
- Dec 17, 2020
-
- Nov 11, 2020
- Nov 07, 2020
-
-
Rye Mutt authored
-
- Nov 06, 2020
-
-
Rye Mutt authored
-
- Oct 31, 2020
-
-
Rye Mutt authored
-
- Oct 29, 2020
-
-
Rye Mutt authored
Hide a bunch of debug logging statements in #ifdef SHOW_DEBUG to prevent spinning a mutex in hot paths.
-
- Oct 10, 2020
-
-
Rye Mutt authored
-
- Oct 08, 2020
-
-
Rye Mutt authored
-
- Sep 10, 2020
-
-
Rye Mutt authored
-
- Sep 08, 2020
- Aug 21, 2020
-
-
Rye Mutt authored
-
- Aug 09, 2020
-
-
Rye Mutt authored
-
- Aug 08, 2020
- Jul 20, 2020
-
-
Rye Mutt authored
-
- Jul 03, 2020
-
-
Rye Mutt authored
-
- Jun 30, 2020
- Apr 13, 2020
-
-
Rye Mutt authored
-
- Mar 25, 2020
-
-
Anchor authored
-
Nat Goodspeed authored
LLThread::currentID() used to return a U32, a distinct unsigned value incremented by explicitly constructing LLThread or by calling LLThread:: registerThreadID() early in a thread launched by other means. The latter imposed an unobvious requirement on new code based on std::thread. Using std::thread::id instead delegates to the compiler/library the problem of distinguishing threads launched by any means. Change lots of explicit U32 declarations. Introduce LLThread::id_t typedef to avoid having to run around fixing uses again if we later revisit this decision. LLMutex, which stores an LLThread::id_t, wants a distinguished value meaning NO_THREAD, and had an enum with that name. But as std::thread::id promises that the default-constructed value is distinct from every valid value, NO_THREAD becomes unnecessary and goes away. Because LLMutex now stores LLThread::id_t instead of U32, make llmutex.h #include "llthread.h" instead of the other way around. This makes LLMutex an incomplete type within llthread.h, so move LLThread::lockData() and unlockData() to the .cpp file. Similarly, remove llrefcount.h's #include "llmutex.h" to break circularity; instead forward-declare LLMutex. It turns out that a number of source files assumed that #include "llthread.h" would get the definition for LLMutex. Sprinkle #include "llmutex.h" as needed. In the SAFE_SSL code in llcorehttp/httpcommon.cpp, there's an ssl_thread_id() callback that returns an unsigned long to the SSL library. When LLThread:: currentID() was U32, we could simply return that. But std::thread::id is very deliberately opaque, and can't be reinterpret_cast to unsigned long. Fortunately it can be hashed because std::hash is specialized with that type.
-
- Mar 23, 2020
-
-
Rye Mutt authored
-
- Mar 19, 2020
-
-
Rye Mutt authored
-
- Jun 03, 2019
-
-
andreykproductengine authored
-
- Jan 15, 2019
-
-
andreykproductengine authored
-
- Jan 16, 2019
-
-
andreykproductengine authored
-
- Jan 14, 2019
-
-
andreykproductengine authored
-
- Dec 15, 2018
-
-
Nat Goodspeed authored
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.
-
- Dec 14, 2018
-
-
Nat Goodspeed authored
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!
-
- Dec 11, 2018
-
-
Nat Goodspeed authored
-
- Dec 10, 2018
-
-
Nat Goodspeed authored
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.
-
- Dec 08, 2018
-
-
Nat Goodspeed authored
-
Nat Goodspeed authored
-
Nat Goodspeed authored
-
- Dec 06, 2018
-
-
Nat Goodspeed authored
This logic is essentially copy-and-edited from the same suspenders-and-belt concerning APPDATA and CSIDL_APPDATA for SL-10153.
-
- Dec 05, 2018
-
-
Nat Goodspeed authored
In that case, also update $APPDATA for child processes.
-