From 5db02993ef806d2d73ae3e3fde89c3405132a348 Mon Sep 17 00:00:00 2001 From: Wolfpup Lowenhar Date: Mon, 27 Sep 2010 20:20:09 -0400 Subject: [STORM-255] As a user I would like to disable incoming Group/IM toasts from showing up. This will also take care of STORM-221 since the person that would be affected by the toast cha now disable them. --- doc/contributions.txt | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index bcf714b29a..210deb3cb1 100644 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -742,6 +742,12 @@ Wilton Lundquist VWR-7682 Zai Lynch VWR-19505 +Wolfpup Lowenhar + SNOW-622 + SNOW-772 + STORM-255 + VWR-20741 + VWR-20933 Zarkonnen Decosta VWR-253 Zi Ree -- cgit v1.3 From b011305d3ffd9009ac1b6fcfe5ea6407ae507442 Mon Sep 17 00:00:00 2001 From: Wolfpup Lowenhar Date: Tue, 26 Oct 2010 08:41:30 -0400 Subject: Addtition of Alexandrea Fride to contributions.text --- doc/contributions.txt | 2 ++ 1 file changed, 2 insertions(+) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index e160c996b9..92809447d4 100644 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -78,6 +78,8 @@ Aleric Inglewood Ales Beaumont VWR-9352 SNOW-240 +Alexandrea Fride + STORM-255 Alissa Sabre VWR-81 VWR-83 -- cgit v1.3 From 46940d4a5f9e6b0d19b5e6bacd84c4f7bc89eba3 Mon Sep 17 00:00:00 2001 From: Wolfpup Lowenhar Date: Wed, 27 Oct 2010 22:27:59 -0400 Subject: STORM-255: removal if extra jira numbers in contributions.txt --- doc/contributions.txt | 4 ---- 1 file changed, 4 deletions(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index 9b14187780..f4dc6cfbe4 100644 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -755,11 +755,7 @@ Wilton Lundquist Zai Lynch VWR-19505 Wolfpup Lowenhar - SNOW-622 - SNOW-772 STORM-255 - VWR-20741 - VWR-20933 Zarkonnen Decosta VWR-253 Zi Ree -- cgit v1.3 From dafece369a796bc1501246c45008ddb9e4ccb765 Mon Sep 17 00:00:00 2001 From: Wolfpup Lowenhar Date: Fri, 29 Oct 2010 09:16:51 -0400 Subject: STORM-255 : Added missing JIRA issue to contributions.txt --- doc/contributions.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index f4dc6cfbe4..6c20e2c177 100644 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -756,6 +756,7 @@ Zai Lynch VWR-19505 Wolfpup Lowenhar STORM-255 + STORM-256 Zarkonnen Decosta VWR-253 Zi Ree -- cgit v1.3 From 463969116fa64c6f90cd7eb455e2432db375d359 Mon Sep 17 00:00:00 2001 From: Vadim ProductEngine Date: Fri, 29 Oct 2010 23:48:46 +0300 Subject: STORM-501 FIXED Script-editor shows ERRORS in the wrong line. LLTextBase::setCursor() sometimes failed to work properly if line wrapping was enabled. This is a slightly optimized version of the patch made by Satomi Ahn. --- doc/contributions.txt | 2 ++ indra/llui/lltextbase.cpp | 34 +++++++++++++++++++++++++++------- 2 files changed, 29 insertions(+), 7 deletions(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index ee2dea7344..b3d30c3a54 100644 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -594,6 +594,8 @@ Salahzar Stenvaag CT-321 Sammy Frederix VWR-6186 +Satomi Ahn + STORM-501 Scrippy Scofield VWR-3748 Seg Baphomet diff --git a/indra/llui/lltextbase.cpp b/indra/llui/lltextbase.cpp index 758df418e8..5721df6b36 100644 --- a/indra/llui/lltextbase.cpp +++ b/indra/llui/lltextbase.cpp @@ -2214,19 +2214,39 @@ bool LLTextBase::scrolledToEnd() return mScroller->isAtBottom(); } - bool LLTextBase::setCursor(S32 row, S32 column) { - if (0 <= row && row < (S32)mLineInfoList.size()) + if (row < 0 || column < 0) return false; + + S32 n_lines = mLineInfoList.size(); + for (S32 line = row; line < n_lines; ++line) { - S32 doc_pos = mLineInfoList[row].mDocIndexStart; - column = llclamp(column, 0, mLineInfoList[row].mDocIndexEnd - mLineInfoList[row].mDocIndexStart - 1); - doc_pos += column; - updateCursorXPos(); + const line_info& li = mLineInfoList[line]; + + if (li.mLineNum < row) + { + continue; + } + else if (li.mLineNum > row) + { + break; // invalid column specified + } + + // Found the given row. + S32 line_length = li.mDocIndexEnd - li.mDocIndexStart;; + if (column >= line_length) + { + column -= line_length; + continue; + } + // Found the given column. + updateCursorXPos(); + S32 doc_pos = li.mDocIndexStart + column; return setCursorPos(doc_pos); } - return false; + + return false; // invalid row or column specified } -- cgit v1.3 From 398b8564e19deacc27a631e4668b00ed4a6ffe12 Mon Sep 17 00:00:00 2001 From: Merov Linden Date: Fri, 29 Oct 2010 15:42:29 -0700 Subject: STORM-420 : allow teleport when double clicking the minimap if doubleclick teleport is on, allow beacon setting if not --- doc/contributions.txt | 2 ++ indra/newview/llfloatermap.cpp | 30 ++++++++++++++++++++++++++---- indra/newview/llnetmap.h | 2 ++ 3 files changed, 30 insertions(+), 4 deletions(-) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index ee2dea7344..09f0f1ae8a 100644 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -127,6 +127,7 @@ Alissa Sabre VWR-12617 VWR-12620 VWR-12789 + SNOW-322 Angus Boyd VWR-592 Ann Congrejo @@ -143,6 +144,7 @@ Asuka Neely Balp Allen VWR-4157 Be Holder + SNOW-322 SNOW-397 Benja Kepler VWR-746 diff --git a/indra/newview/llfloatermap.cpp b/indra/newview/llfloatermap.cpp index a1d291fea6..8a48265313 100644 --- a/indra/newview/llfloatermap.cpp +++ b/indra/newview/llfloatermap.cpp @@ -43,6 +43,8 @@ #include "lldraghandle.h" #include "lltextbox.h" #include "llviewermenu.h" +#include "llfloaterworldmap.h" +#include "llagent.h" // // Constants @@ -122,11 +124,31 @@ BOOL LLFloaterMap::postBuild() return TRUE; } -BOOL LLFloaterMap::handleDoubleClick( S32 x, S32 y, MASK mask ) +BOOL LLFloaterMap::handleDoubleClick(S32 x, S32 y, MASK mask) { - // If floater is minimized, minimap should be shown on doubleclick (STORM-299) - std::string floater_to_show = this->isMinimized() ? "mini_map" : "world_map"; - LLFloaterReg::showInstance(floater_to_show); + LLVector3d pos_global = mMap->viewPosToGlobal(x, y); + + // If we're not tracking a beacon already, double-click will set one + if (!LLTracker::isTracking(NULL)) + { + LLFloaterWorldMap* world_map = LLFloaterWorldMap::getInstance(); + if (world_map) + { + world_map->trackLocation(pos_global); + } + } + + if (gSavedSettings.getBOOL("DoubleClickTeleport")) + { + // If DoubleClickTeleport is on, double clicking the minimap will teleport there + gAgent.teleportViaLocationLookAt(pos_global); + } + else + { + // If floater is minimized, minimap should be shown on doubleclick (STORM-299) + std::string floater_to_show = this->isMinimized() ? "mini_map" : "world_map"; + LLFloaterReg::showInstance(floater_to_show); + } return TRUE; } diff --git a/indra/newview/llnetmap.h b/indra/newview/llnetmap.h index 650bce0da4..e053b1c177 100644 --- a/indra/newview/llnetmap.h +++ b/indra/newview/llnetmap.h @@ -38,6 +38,7 @@ class LLColor4U; class LLCoordGL; class LLImageRaw; class LLViewerTexture; +class LLFloaterMap; class LLNetMap : public LLUICtrl { @@ -55,6 +56,7 @@ public: protected: LLNetMap (const Params & p); friend class LLUICtrlFactory; + friend class LLFloaterMap; public: virtual ~LLNetMap(); -- cgit v1.3 From 5d7417b40ed8717b3f307ed9e53c249a3a26cf1b Mon Sep 17 00:00:00 2001 From: Vadim ProductEngine Date: Tue, 2 Nov 2010 20:26:38 +0200 Subject: STORM-422 FIXED Added command line option "-disablecrashlogger" to disable crash logger. This is a patch originally written by Robin Cornelius. I made it work with Google Breakpad. --- doc/contributions.txt | 1 + indra/llcommon/llapp.cpp | 32 ++++++++++++++++++++++++++++++++ indra/llcommon/llapp.h | 6 ++++++ indra/newview/app_settings/cmd_line.xml | 8 ++++++++ indra/newview/llappviewer.cpp | 14 ++++++++++++++ 5 files changed, 61 insertions(+) (limited to 'doc') diff --git a/doc/contributions.txt b/doc/contributions.txt index 2ca5adc643..21c60ea362 100644 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -573,6 +573,7 @@ Robin Cornelius SNOW-585 SNOW-599 SNOW-747 + STORM-422 VWR-2488 VWR-9557 VWR-11128 diff --git a/indra/llcommon/llapp.cpp b/indra/llcommon/llapp.cpp index eebd5ed0a6..39daefd1ad 100644 --- a/indra/llcommon/llapp.cpp +++ b/indra/llcommon/llapp.cpp @@ -90,6 +90,10 @@ S32 LL_HEARTBEAT_SIGNAL = (SIGRTMAX >= 0) ? (SIGRTMAX-0) : SIGUSR2; // the static application instance LLApp* LLApp::sApplication = NULL; +// Allows the generation of core files for post mortem under gdb +// and disables crashlogger +BOOL LLApp::sDisableCrashlogger = FALSE; + // Local flag for whether or not to do logging in signal handlers. //static BOOL LLApp::sLogInSignal = FALSE; @@ -461,11 +465,30 @@ bool LLApp::isQuitting() return (APP_STATUS_QUITTING == sStatus); } +// static bool LLApp::isExiting() { return isQuitting() || isError(); } +void LLApp::disableCrashlogger() +{ + // Disable Breakpad exception handler. + if (mExceptionHandler != 0) + { + delete mExceptionHandler; + mExceptionHandler = 0; + } + + sDisableCrashlogger = TRUE; +} + +// static +bool LLApp::isCrashloggerDisabled() +{ + return (sDisableCrashlogger == TRUE); +} + #if !LL_WINDOWS // static U32 LLApp::getSigChildCount() @@ -799,6 +822,15 @@ void default_unix_signal_handler(int signum, siginfo_t *info, void *) { llwarns << "Signal handler - Flagging error status and waiting for shutdown" << llendl; } + + if (LLApp::isCrashloggerDisabled()) // Don't gracefully handle any signal, crash and core for a gdb post mortem + { + clear_signals(); + llwarns << "Fatal signal received, not handling the crash here, passing back to operating system" << llendl; + raise(signum); + return; + } + // Flag status to ERROR, so thread_error does its work. LLApp::setError(); // Block in the signal handler until somebody says that we're done. diff --git a/indra/llcommon/llapp.h b/indra/llcommon/llapp.h index ee1d696829..a536a06ea5 100644 --- a/indra/llcommon/llapp.h +++ b/indra/llcommon/llapp.h @@ -189,6 +189,11 @@ public: // virtual bool mainLoop() = 0; // Override for the application main loop. Needs to at least gracefully notice the QUITTING state and exit. + // + // Crash logging + // + void disableCrashlogger(); // Let the OS handle the crashes + static bool isCrashloggerDisabled(); // Get the here above set value // // Application status @@ -280,6 +285,7 @@ protected: static void setStatus(EAppStatus status); // Use this to change the application status. static EAppStatus sStatus; // Reflects current application status static BOOL sErrorThreadRunning; // Set while the error thread is running + static BOOL sDisableCrashlogger; // Let the OS handle crashes for us. #if !LL_WINDOWS static LLAtomicU32* sSigChildCount; // Number of SIGCHLDs received. diff --git a/indra/newview/app_settings/cmd_line.xml b/indra/newview/app_settings/cmd_line.xml index 00d69f805e..ba3b6a42a4 100644 --- a/indra/newview/app_settings/cmd_line.xml +++ b/indra/newview/app_settings/cmd_line.xml @@ -391,5 +391,13 @@ CrashOnStartup + disablecrashlogger + + desc + Disables the crash logger and lets the OS handle crashes + map-to + DisableCrashLogger + + diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index 931b9fd2f3..b17e4d77d5 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -2020,6 +2020,15 @@ bool LLAppViewer::initConfiguration() // - apply command line settings clp.notify(); + // Register the core crash option as soon as we can + // if we want gdb post-mortem on cores we need to be up and running + // ASAP or we might miss init issue etc. + if(clp.hasOption("disablecrashlogger")) + { + llwarns << "Crashes will be handled by system, stack trace logs and crash logger are both disabled" << llendl; + LLAppViewer::instance()->disableCrashlogger(); + } + // Handle initialization from settings. // Start up the debugging console before handling other options. if (gSavedSettings.getBOOL("ShowConsoleWindow")) @@ -2596,6 +2605,11 @@ void LLAppViewer::handleViewerCrash() abort(); } + if (LLApp::isCrashloggerDisabled()) + { + abort(); + } + // Returns whether a dialog was shown. // Only do the logic in here once if (pApp->mReportedCrash) -- cgit v1.3