Merge branch 'master' of https://github.com/FirestormViewer/phoenix-firestorm
commit
3de628f1ce
|
|
@ -1817,9 +1817,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>26b0386266b7bdbf7907fa4ee8cb7b27</string>
|
||||
<string>9f70048bed4c3fc487bee9e9f4276037</string>
|
||||
<key>url</key>
|
||||
<string>file:///opt/firestorm/llphysicsextensions_tpv-1.0.10206976532-darwin64-10206976532.tar.bz2</string>
|
||||
<string>file:///opt/firestorm/llphysicsextensions_tpv-1.0.11371371972-darwin64-11371371972.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>darwin64</string>
|
||||
|
|
@ -1841,9 +1841,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>bd24b6c7c62922b06340ec73bd147483</string>
|
||||
<string>31daa8f133168cc9ab500aa3a235b63c</string>
|
||||
<key>url</key>
|
||||
<string>file:///c:/cygwin/opt/firestorm/llphysicsextensions_tpv-1.0.10206976532-windows64-10206976532.tar.bz2</string>
|
||||
<string>file:///c:/cygwin/opt/firestorm/llphysicsextensions_tpv-1.0.11371371972-windows64-11371371972.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>windows</string>
|
||||
|
|
|
|||
|
|
@ -1659,19 +1659,3 @@ namespace LLError
|
|||
sLocalizedOutOfMemoryWarning = message;
|
||||
}
|
||||
}
|
||||
|
||||
void crashdriver(void (*callback)(int*))
|
||||
{
|
||||
// The LLERROR_CRASH macro used to have inline code of the form:
|
||||
//int* make_me_crash = NULL;
|
||||
//*make_me_crash = 0;
|
||||
|
||||
// But compilers are getting smart enough to recognize that, so we must
|
||||
// assign to an address supplied by a separate source file. We could do
|
||||
// the assignment here in crashdriver() -- but then BugSplat would group
|
||||
// all LL_ERRS() crashes as the fault of this one function, instead of
|
||||
// identifying the specific LL_ERRS() source line. So instead, do the
|
||||
// assignment in a lambda in the caller's source. We just provide the
|
||||
// nullptr target.
|
||||
callback(nullptr);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -420,9 +420,11 @@ typedef LLError::NoClassInfo _LL_CLASS_TO_LOG;
|
|||
#define LL_NEWLINE '\n'
|
||||
|
||||
// Use this only in LL_ERRS or in a place that LL_ERRS may not be used
|
||||
#define LLERROR_CRASH \
|
||||
{ \
|
||||
crashdriver([](int* ptr){ *ptr = 0; exit(*ptr); }); \
|
||||
#define LLERROR_CRASH \
|
||||
{ \
|
||||
int* make_me_crash = (int*)0xDEADBEEFDEADBEEFUL; \
|
||||
*make_me_crash = 0; \
|
||||
exit(*make_me_crash); \
|
||||
}
|
||||
|
||||
#define LL_ENDL \
|
||||
|
|
@ -524,7 +526,4 @@ LL_DEBUGS("SomeTag") performs the locking and map-searching ONCE, then caches
|
|||
the result in a static variable.
|
||||
*/
|
||||
|
||||
// used by LLERROR_CRASH
|
||||
void crashdriver(void (*)(int*));
|
||||
|
||||
#endif // LL_LLERROR_H
|
||||
|
|
|
|||
|
|
@ -1048,7 +1048,7 @@
|
|||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
<integer>1</integer>
|
||||
</map>
|
||||
<key>FSSupportGroupChatPrefixTesting</key>
|
||||
<map>
|
||||
|
|
@ -1059,7 +1059,7 @@
|
|||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
<integer>1</integer>
|
||||
</map>
|
||||
<key>AutoCloseOOC</key>
|
||||
<map>
|
||||
|
|
|
|||
|
|
@ -1789,6 +1789,7 @@ bool LLAppViewer::doFrame()
|
|||
|
||||
display();
|
||||
|
||||
if (LLStartUp::getStartupState() > STATE_AGENT_WAIT) // <FS:Beq/> FIRE-34590 - Bugsplat caused by updating maps before world is loaded.
|
||||
{
|
||||
LLPerfStats::RecordSceneTime T(LLPerfStats::StatType_t::RENDER_IDLE);
|
||||
LL_PROFILE_ZONE_NAMED_CATEGORY_APP("df Snapshot");
|
||||
|
|
|
|||
|
|
@ -152,6 +152,12 @@ void LLDrawPoolWater::renderPostDeferred(S32 pass)
|
|||
LLEnvironment& environment = LLEnvironment::instance();
|
||||
LLSettingsWater::ptr_t pwater = environment.getCurrentWater();
|
||||
LLSettingsSky::ptr_t psky = environment.getCurrentSky();
|
||||
// <FS:Beq> FIRE-34590 - Bugsplat Crash typically in startup state, due to null water.
|
||||
if (!pwater || !psky)
|
||||
{
|
||||
LL_WARNS() << "LLDrawPoolWater::renderPostDeferred: water or sky settings not available" << LL_ENDL;
|
||||
}
|
||||
// </FS:Beq>
|
||||
LLVector3 light_dir = environment.getLightDirection();
|
||||
bool sun_up = environment.getIsSunUp();
|
||||
bool moon_up = environment.getIsMoonUp();
|
||||
|
|
|
|||
|
|
@ -1057,7 +1057,7 @@ void LLTerrainPartition::getGeometry(LLSpatialGroup* group)
|
|||
}
|
||||
|
||||
const bool has_tangents = tangents_start.get() != nullptr;
|
||||
if (has_tangents)
|
||||
if (has_tangents && index_offset > 0) // <FS:Beq/> FIRE-34672 OPENSIM bugsplat crash
|
||||
{
|
||||
LLStrider<LLVector3> vertices = vertices_start;
|
||||
LLStrider<LLVector3> normals = normals_start;
|
||||
|
|
|
|||
Loading…
Reference in New Issue