diff options
| author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2021-08-06 20:44:02 +0300 | 
|---|---|---|
| committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2021-08-06 20:44:02 +0300 | 
| commit | 1de9a6e32e5060d299d79ab874b892a6a325dd70 (patch) | |
| tree | 16c35509d1ac88d2cda301691a38ea5f4b9c076b /indra | |
| parent | 830cd677ffc493df1a4727663f88ae6ea0e6c58b (diff) | |
SL-15696 Don't be so persistent with outdated driver notification
Some manufactures provide no own updated drivers yet forbid users from updating to intel provided one
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/newview/llappviewer.cpp | 30 | 
1 files changed, 19 insertions, 11 deletions
| diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index 21e7045776..ddb4258030 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -1109,19 +1109,27 @@ bool LLAppViewer::init()              if (count > 0 && v1 <= 10)              {                  LL_INFOS("AppInit") << "Detected obsolete intel driver: " << driver << LL_ENDL; -                LLUIString details = LLNotifications::instance().getGlobalString("UnsupportedIntelDriver"); -                std::string gpu_name = ll_safe_string((const char *)glGetString(GL_RENDERER)); -                details.setArg("[VERSION]", driver); -                details.setArg("[GPUNAME]", gpu_name); -                S32 button = OSMessageBox(details.getString(), -                                          LLStringUtil::null, -                                          OSMB_YESNO); -                if (OSBTN_YES == button && gViewerWindow) + +                if (!gViewerWindow->getInitAlert().empty() // graphic initialization crashed on last run +                    || LLVersionInfo::getInstance()->getChannelAndVersion() != gLastRunVersion // viewer was updated +                    || mNumSessions % 20 == 0 //periodically remind user to update driver +                    )                  { -                    std::string url = LLWeb::escapeURL(LLTrans::getString("IntelDriverPage")); -                    if (gViewerWindow->getWindow()) +                    LLUIString details = LLNotifications::instance().getGlobalString("UnsupportedIntelDriver"); +                    std::string gpu_name = ll_safe_string((const char *)glGetString(GL_RENDERER)); +                    LL_INFOS("AppInit") << "Notifying user about obsolete intel driver for " << gpu_name << LL_ENDL; +                    details.setArg("[VERSION]", driver); +                    details.setArg("[GPUNAME]", gpu_name); +                    S32 button = OSMessageBox(details.getString(), +                        LLStringUtil::null, +                        OSMB_YESNO); +                    if (OSBTN_YES == button && gViewerWindow)                      { -                        gViewerWindow->getWindow()->spawnWebBrowser(url, false); +                        std::string url = LLWeb::escapeURL(LLTrans::getString("IntelDriverPage")); +                        if (gViewerWindow->getWindow()) +                        { +                            gViewerWindow->getWindow()->spawnWebBrowser(url, false); +                        }                      }                  }              } | 
