Skip to content
Snippets Groups Projects
  1. Jan 15, 2019
  2. May 17, 2018
    • Nat Goodspeed's avatar
      SL-821: Move Windows BugSplat engagement from llcommon to newview. · c5f618d0
      Nat Goodspeed authored
      Use WSTRINGIZE(), LL_TO_WSTRING(), wstringize() to produce required wide
      strings. Use a lambda for callback that sends log file; use LLDir, if set, to
      find the log file.
      
      Introduce BUGSPLAT CMake variable to allow suppressing BugSplat.
      Make BUGSPLAT CMake variable set LL_BUGSPLAT for C++ compilations.
      
      Set viewer version macros on llappviewerwin32.cpp, llappviewerlinux.cpp and
      llappdelegate-objc.mm -- because BugSplat needs the viewer version data, and
      because the macOS BugSplat hook is engaged in an Objective-C++ function we
      override in the app delegate.
      c5f618d0
  3. Oct 19, 2017
  4. Sep 06, 2017
  5. Jun 30, 2016
    • Nat Goodspeed's avatar
      DRTVWR-418: Unify control flow through LLAppViewer across platforms. · 464a0df4
      Nat Goodspeed authored
      The LLApp API used to consist of init(), mainLoop(), cleanup() methods. This
      makes sense -- but on Mac that structure was being subverted. The method
      called mainLoop() was in fact being called once per frame. There was
      initialization code in the method, which (on Mac) needed to be skipped with an
      already-initialized bool. There was a 'while' loop which (on Mac) needed to be
      turned into an 'if' instead so the method would return after every frame.
      
      Rename LLApp::mainLoop() to frame(). Propagate through subclasses LLAppViewer
      and LLCrashLogger. Document the fact that frame() returns true to mean "done."
      (This was always the case, but had to be inferred from the code.)
      
      Rename the Mac Objective-C function mainLoop to oneFrame. Rename the C++ free
      function it calls from runMainLoop() to pumpMainLoop(). Add comments to
      llappdelegate-objc.mm explaining (inferred) control flow.
      
      Change the Linux viewer main() and the Windows viewer WINMAIN() from a single
      LLAppViewer::mainLoop() call to repeatedly call frame() until it returns true.
      
      Move initialization code from the top of LLAppViewer::frame() to the init()
      method, where it more properly belongs. Remove corresponding
      mMainLoopInitialized flag (and all references) from LLAppViewer.
      
      Remove 'while (! LLApp::isExiting())' (or on Mac, 'if (! LLApp::isExiting())')
      from LLAppViewer::frame() -- thus unindenting the whole body of the 'while'
      and causing many lines of apparent change. (Apologies to reviewers.)
      
      There are four LLApp states: APP_STATUS_RUNNING, APP_STATUS_QUITTING,
      APP_STATUS_STOPPED and APP_STATUS_ERROR. Change LLAppViewer::frame() return
      value from (isExiting()) (QUITTING or ERROR) to (! isRunning()). I do not know
      under what circumstances the state might transition to STOPPED during a
      frame() call, but I'm quite sure that if it does, we don't want to call
      frame() again. We only want a subsequent call if the state is RUNNING.
      
      Also rename mainLoop() method in LLCrashLogger subclasses
      LLCrashLoggerWindows, LLCrashLoggerMac, LLCrashLoggerLinux. Of course it's
      completely up to the frame() method whether to yield control; none of those in
      fact do. Honor protocol by returning true (frame() is done), even though each
      one's main() caller ignores the return value.
      
      In fact LLCrashLoggerWindows::mainLoop() wasn't using the return protocol
      correctly anyway, returning wParam or 0 or 1 -- possibly because the return
      protocol was never explicitly documented. It should always return true: "I'm
      done, don't call me again."
      464a0df4
  6. Nov 10, 2015
  7. Apr 14, 2014
  8. Jan 22, 2014
  9. Dec 04, 2013
  10. Dec 03, 2013
  11. Jul 30, 2013
  12. Mar 29, 2013
  13. Mar 28, 2013
  14. Mar 12, 2013
  15. Mar 04, 2013
  16. Nov 02, 2010
  17. Oct 13, 2010
  18. Sep 21, 2010
  19. Aug 13, 2010
  20. May 28, 2010
  21. May 27, 2010
  22. May 26, 2010
    • Lynx Linden's avatar
      Hooked up Google Breakpad for the Linux client too. · a63b6dd9
      Lynx Linden authored
      Using Alain's Darwin reporter callback was all that was needed.
      
      Also replaced the call that exposed the breakpad exception class
      with a call to just write out the minidump, as that was the only
      reason for exposing it. Now clients don't need to know about
      Google Breakpad.
      a63b6dd9
  23. May 25, 2010
  24. May 24, 2010
  25. May 21, 2010
  26. Mar 29, 2010
  27. Dec 14, 2009
  28. Dec 07, 2009
  29. Nov 13, 2009
  30. Aug 29, 2009
    • Steven Bennetts's avatar
      Partial merge of: viewer-2.0.0-3@131138 texture-pipeline-3@131862 -> viewer-2.0.0-3 · a1ed9ccf
      Steven Bennetts authored
      Includes:
      * DEV-31909 VWR-13251: Revise lscript_library.cpp to allow localization of LSL editor hovertips
      * DEV-21938 llSHA1String does not appear where expected in the dropdown "Insert" menu in the LSL editor
      * Some cleanup to llerror so that it doesn't depend on llfixedbuffer
      * A few misc. server specific changes not related to the texture-pipeline changes (llapp, lloptioninterface)
      a1ed9ccf
  31. Jul 30, 2009
  32. May 18, 2009
  33. Jan 16, 2009
  34. Jan 07, 2009
  35. Dec 04, 2008
  36. Apr 16, 2008
Loading