Commit Graph

49 Commits (8a13530ce4eeb481ee467fd3ec54f1ed7e9f632a)

Author SHA1 Message Date
Nat Goodspeed 464a0df4c1 DRTVWR-418: Unify control flow through LLAppViewer across platforms.
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."
2016-06-30 16:51:50 -04:00
Oz Linden 9be58e915a merge with 4.0.3-release 2016-04-04 15:53:09 -04:00
Oz Linden 5822fb00b6 merge DRTVWR-398 build cleanup fixes 2016-03-07 12:41:11 -05:00
Oz Linden c8726aba30 remove execute permission from many files that should not have it 2015-11-10 09:48:56 -05:00
Rider Linden c4267e0284 Swap BOOST_COROUTINE and BOOST_CONTEXT 2015-08-19 10:30:41 -07:00
Rider Linden 4a4470af32 Coding policy fixes 2015-06-17 13:53:28 -07:00
Rider Linden 0b76b318db Move librt. 2015-04-30 15:45:04 -07:00
Rider Linden ef1b709c99 Fix to linux link
Put timeout back into crashlogger post.
2015-04-30 15:21:49 -07:00
Rider Linden 7c639f11a6 Change link order 2015-04-30 14:52:20 -07:00
Rider Linden cc26fb5b24 Add LIBRT to libraries in linux crash logger. 2015-04-30 14:06:03 -07:00
Rider Linden f577f71641 Missed the linux crash logger. 2015-04-30 13:16:02 -07:00
Jonathan Yap 44f5d73209 STORM-2086 Convert old style llinfos and llwarns to new format 2014-11-20 16:25:11 -05:00
Richard Linden 98aabdc176 merge with release 2014-04-07 19:09:40 -07:00
Aura Linden 6809348125 Creating a cleaner branch 2013-12-03 17:06:06 -08:00
Richard Linden d83c51a4e1 BUILDFIX: converted platform-specific files over to new LL_INFOS, etc macros 2013-08-14 21:58:30 -07:00
Graham Madarasz 6074f65991 Merge with vwr-dev-mat 2013-05-10 10:34:26 -07:00
Oz Linden 1b984d8f40 merge changes for 3.5.1-release 2013-05-08 14:46:00 -04:00
Graham Madarasz 806d09b114 Merge 3.5.1 into Materials 2013-04-30 19:50:05 -07:00
Oz Linden ddd5659f81 merge changes for DRTVWR-294 2013-04-19 10:11:29 -04:00
Graham Madarasz bf6182daa8 Update Mac and Windows breakpad builds to latest 2013-03-29 07:50:08 -07:00
Graham Madarasz (Graham Linden) 903996e8d4 Google Breakpad Fix 2013-03-28 19:25:51 -07:00
Graham Madarasz 48f433212f Fix breakpad breakage from linux API diffs 2013-03-27 23:18:14 -07:00
Don Kjer c06c35609c Updating linux build to gcc4.6 2012-10-11 00:09:04 +00:00
Dave Parks cfb666e9d9 merge 2011-11-15 17:04:37 -06:00
Brad Payne (Vir Linden) 0c84957d31 SH-2606 FIX, SH-2628 FIX - crash on exit in crash logger fixed by LLProxy::cleanupClass() 2011-10-27 14:50:54 -04:00
Oz Linden be251b06eb merge changes for open-38 2011-10-11 09:31:09 -04:00
Aaron Stone 42daa3497b STORM-1482 The Viewer shouldn't overwrite the crash behavior settings, some cleanups to the crash reporters, and the ability to use --set GroupName.SettingName to set parameters outside of the (default) Global settings group. 2011-07-12 15:48:02 -07:00
Boroondas Gupte (patch by Aleric Inglewood) 942823db09 OPEN-38: Fixes for viewer-autobuild for standalone
Reviewed at https://codereview.secondlife.com/r/167/
(The patch to create this commit was taken from there, too. That patch
was made relative to 5f0ab9443ece. Applied cleanly to the (earlier)
43b4b7927c00.)

Also fixes OPEN-36
2011-04-03 14:34:44 +02:00
Oz Linden 06b0d72efa Change license from GPL to LGPL (version 2.1) 2010-08-13 07:24:57 -04:00
Lynx Linden bd32a9c6ef Don't try to add old stack trace files to the crash report.
Such as stack_trace.log on Linux or SecondLifeException.log on Win32.
2010-05-27 15:47:05 +01:00
Tofu Linden 9b213eeb22 EXT-5500 reduce linux package size
remove the now-redundant and somewhat odd (mea culpa) stripping process from the CMake stage
2010-02-17 20:48:40 +00:00
Adam Moss 406927f629 Merge a big bunch of fixes from maint-viewer. Hooray.
svn merge -r136066:136073 svn+ssh://svn.lindenlab.com/svn/linden/branches/maint-viewer/maint-viewer-24-qa-9

DEV-8553 New Server Tools - Prep Land For Sale
DEV-32942 (QAR-1521) Bad border crossings or TP / Ruthing issues
DEV-32942 (QAR-1521) Bad border crossings or TP / Ruthing issues
DEV-33239 VWR-13816: Resizing the Search Window Causes the Results to Refresh back to First Page
DEV-27746 Running a dev build of Second Life will make console window show up on non-dev builds (Windows)
DEV-33209 Linux 1.24.0.120778 client fails to run
DEV-29123 SVC-3871: Crash of viewer when clicking on ghost objects at (0,0,0) on a sim
DEV-35433 Attempting to upload wrong file type crashes viewer
DEV-33499 viewer2009 is not using KDU
DEV-33912 Griefing viewer crashes others' viewers with malformed sound files
DEV-3784 VWR-138: Animation Priority not working correctly, Can't create new AOs
DEV-20678 VWR-9069: Region variable says 'Region Name' in AR if no object is selected
DEV-19934 Help->About Second Life doesn't differentiate between 32- and 64-bit Vista
DEV-6604 Restored folders have 'Purge Item' and 'Restore Item' options
DEV-12867 VWR-5717: Selected Text is not replaced by Input text when Japanese IME is on
DEV-11894 Notecards/Texture windows don't open completely when opened from inventory
DEV-10641 VWR-4955: Local Chat doesn't show end of last conversation
DEV-30039 VWR-12620: Viewer build fails on Linux when compiled with -O2 (--type=Release)
DEV-20944 VWR-9065: (intermittent) Right Click >profile on avatar does not display profile
DEV-24828 Menu accelerator prefixes shouldn't be hard-coded
DEV-34529 VWR-14267: Clicking send in an IM window does not add the sent text to the line editor history
DEV-34124 Invite to group, search by name will not show resident if their first name is two characters
DEV-20930 VWR-9248: On Mac: the "--url" option causes a command line parsing error
DEV-35306 Adult keyword filter triggers multiple warnings
DEV-35503 VWR-3595: "Second Life requires True Color (32-bit) to run in a window" message is incorrect
DEV-35656 VWR-12995: FTBFS: error: format '%-3d' expects type 'int', but argument 3 has type 'size_t'
DEV-30043 VWR-12533: Linux viewer build for OpenAL fails during packaging unless FMOD library is available
DEV-31898 VWR-13202: Right clicking mouse triggers arrow key control events
DEV-32610 Keyboard shortcuts on OSX viewer overridden by OSX
DEV-27067 Coverity Prevent: EVALUATION_ORDER defects
DEV-26188 VWR-2242: Specially formatted .BVH file can cause avatar distortion
DEV-25475 About Land dialog no longer shows Area: field
DEV-19897 OSX Viewer Installer (for an RC) opens with poor positioning
DEV-22837 Inventory> Search Recent Items highlighting incorrect characters
DEV-21709 VWR-9377: Mapping will default to leave exact sim name listing first. (Searching Gar forces Gar to come up and not Garden of Dreams)
DEV-23079 implement volume serial for linux client
DEV-13930 VWR-6432: Space Navigator operation with vehicles is broken
DEV-27666 VWR-10829: Linux Viewer: CLICK_ACTION_PAY shows CLICK_ACTION_PLAY icon
DEV-23670 Viewer crashes on startup if installed into a custom folder with Korean, Japanese or Chinese characters in path
DEV-19313 VWR-8454: PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS not highlighted in script editor
DEV-19918 VWR-8885: Move character/*.xml files to source bundle
DEV-25555 VWR-11172: A source coding mistake prevents number-pad keys from specifying Ctrl+digit shortcuts on Windows
DEV-8536 VWR-4057: Multi-line chat display bug - first character in line missing
DEV-29592 Mac LLFastTimer uses wall clock instead of Intel PMU
DEV-29644 VWR-12587: Cmake install target has a hard coded secondlife-bin reference remaining
DEV-25320 VWR-11128: Python not always detected by develop.py
DEV-30040 VWR-12617: Poor type name that violates Coding Standard breaks compatibility with system header files
DEV-30380 indra/newview/res-sdl/toolpay.BMP is modified during ./develop.py configure
DEV-31247 VWR-12763: non-portable printf specifier used with size_t causes FTBFS on 64bit (due to -Werror)
DEV-29565 VWR-12569: A comment in lluistring.h contains undefined UTF-8 code sequences
DEV-22100 VWR-9620: send_parcel_select_objects in newview/llfloaterland.cpp uses the wrong datatype for the ReturnType field causing a warning
DEV-31911 Selected objects / primitives should be greyed out when nothing is selected
DEV-3667 Windows: Accelerator keys should be "Ctrl+X" rather than "Ctrl-X"
DEV-27223 disable gstreamer on 64-bit linux
DEV-8172 We Need a Linden Sale Option to Sell Land to Anyone
DEV-25511 VWR-10311: Enable LipSync by default
DEV-20443 Revamp group creation confirmation dialog to be more communicative
DEV-20132 VWR-7800: Joystick / SpaceNavigator. Camera should remain in position when exiting flycam mode into avatar mode.
DEV-18420 VWR-8393: Have build scripts copy fmod from an external location
DEV-24841 VWR-10717: Right Space Navigator button should toggle fly in avatar movment, not jump/flyup.
DEV-28457 change auto-populate value in buy L$ window from 1000 to 2000
DEV-15545 VWR-3725: Please add resize option to the SEARCH window UI
2009-10-14 10:40:56 +00:00
Adam Moss 7573288ab3 svn merge -r113780:113785
svn+ssh://svn.lindenlab.com/svn/linden/branches/moss/gst3-t113732

QAR-1333 linux gstreamer compatibility improvements and ADD_BUILD_TEST
improvements - combo merge
2009-03-09 23:42:07 +00:00
Mark Palange 46f8fb8781 svn merge -r107016:108767 svn+ssh://svn.lindenlab.com/svn/linden/viewer/viewer_1-22
Merge back of viewer 1.22 RC6 and RC7 change to trunk.
QAR-1214 and QAR-1227
2009-02-03 21:15:57 +00:00
Aaron Brashears e3cf284388 Result of svn merge -r107256:107258 svn+ssh://svn/svn/user/phoenix/license_2009_merge into trunk. QAR-1165 2009-01-08 00:05:06 +00:00
Mark Palange fb793870fe QAR-1142 merging 1.22 RC0-RC4 changes.
svn merge -c 106471 svn+ssh://svn.lindenlab.com/svn/linden/qa/viewer_1-22-106055_merge
2008-12-23 19:39:58 +00:00
Bryan O'Sullivan 1496c3d0ee Switch llimage and llxml to target_link_libraries 2008-08-29 21:46:30 +00:00
Steven Bennetts 80be4c1d2d QAR-767 Combined maint-render-7 and maint-viewer-9 merge
merge release@93398 viewer-merge-1@94007 -> release
dataserver-is-deprecated
2008-08-12 17:29:50 +00:00
Steven Bennetts 25c10ed028 QAR-628 merge string-cleanup-5 -r 90476:90508 -> release
dataserver-is-deprecated
2008-06-26 00:39:00 +00:00
Bryan O'Sullivan 9db949eec3 svn merge -r88066:88786 svn+ssh://svn.lindenlab.com/svn/linden/branches/cmake-9-merge
dataserver-is-deprecated
for-fucks-sake-whats-with-these-commit-markers
2008-06-02 21:14:31 +00:00
Steven Bennetts 903292ba67 merge -r 78989:80279 Branch_1-19-0-Viewer-> release
Changes from 1.19.0.2 and 1.19.0.3

DEV-9226 Some Dazzle? icons have sneaked into the release branch
DEV-9226 - lock icon not appearing in properties window for no-modify inventory items
DEV-8771 Preferences > Web has truncated text in the Address: section, ported and tested minor xml change
DEV-9736 commit 1.19.0 second set of translated xui strings
DEV-9825 Make the region info message a passive notification
DEV-7714 - Korean viewer crashes on startup.
DEV-9759 - Stand up button etc dissapear offscreen after using mouselook
DEV-9938 client-readme-voice.txt missing from open source distribution
DEV-9436 Changed default SL window size to 1000x700, to allow buttons in UI to have proper labels (Communicate) and search to fit onscreen.
DEV-10031    	Clicking on another users classifieds ad then closing asks you to save changes
DEV-10066    	Checking to select a role does not enable the apply button
DEV-8809    	stray 'Done" on the Profile Web tab
DEV-8515 Debug settings overrides do not work for booleans.  svn merge -r77376:77377 sl-parcelmedia-3.  OK by cg.
DEV-10083: Preferences window docks at an offscreen position and cannot be moved vertically
DEV-10186 - LLIMPanel kills the framerate for group ims.
DEV-10108 Viewer freeze and delay in opening map
DEV-10115 Visible flashing of prim highlight when editing
DEV-10112 	Parcel audio play setting is not remembered when crossing over a parcel with no media
DEV-10109 	Alt and left/right arrow keys dont move you between tabs
DEV-10093 	Login Page > SL Release link overlaps Quit when viewer resized
DEV-10048 	Redocking the Contact list causes the communicate ui to get ugly
DEV-8131  	 Deutsch "System Default" is translated as "System Error" in language preferences
DEV-10209 - reverted floater_test.xml to empty floater.
DEV-10255 - Clicking on gestures button moves open windows
DEV-10046 	Pressing escape doesnt cause the chat history or inventory windows to lose focus
DEV-10399 -- Update required version of QuickTime library to 7.4.1 for 1.19.0 Viewer
DEV-10410 - Toggling voice causes layout problems in toolbar
DEV-8562 - Viewer crash just after login
DEV-10147 - "LLXmlTree parse failed" with settings_releasecandidate.xml
DEV-9874 - Land forsale icon in menubar overlaps pushobject restriction icon
DEV-9701 - Upload Animation window: Button missing in Stopped window state
DEV-10355 - Client crashes when viewing the proposals tab in group information
DEV-10521 My Landmarks dropdown list adds a repetition to EOF every time it's opened
DEV-10496 Groups>Proposals>Past Vote text gets chomped
DEV-10499 Defaulted buttons in floater dialogs remain highlighted when not in focus
DEV-5611 - Crash reporter appears in the background on mac (Changed launch to use open instead of direct binary call)
DEV-10704 - Crash reporter not initializing boolean, causing false exec_froze reporting (Added initilizer to constructor)
2008-02-19 23:12:34 +00:00
Kyle Machulis 2e7c0d973e svn merge -r74104:74124 svn+ssh://svn/svn/linden/branches/crash-logger-cleanup-merge-6 2007-11-20 23:42:48 +00:00
Aaron Brashears 5595a99623 Result of svn merge -r71162:71205 svn+ssh://svn/svn/linden/branches/new-license into release. only changes files which are not deployed or the comments section of code. 2007-10-04 23:19:43 +00:00
Aaron Brashears 4942a7b779 Result of svn merge -r70873:71086 svn+ssh://svn/svn/linden/branches/enable-exceptions into release. 2007-10-04 16:31:48 +00:00
Don Kjer 9746cf5310 EFFECTIVE MERGE: svn merge -r 65485:66133 svn+ssh://svn/svn/linden/branches/maintenance into release
This includes fixes to the maintenance-r66133 branch, and sync'ing up with release@r66392

ACTUAL MERGE: svn merge -r 66394:66435 svn+ssh://svn/svn/linden/branches/release-r66392 into release
EQUIVALENT TO: svn merge -r 65485:66434 svn+ssh://svn/svn/linden/branches/maintenance-r66133 into release (plus branch sync'ing)
2007-07-26 01:22:23 +00:00
Don Kjer d373dcc7cb svn merge -r 64548:64837 svn+ssh://svn/svn/linden/branches/maintenance into release
* WARNING *:  maintenance r64837 is not the last rev to use in the next merge. use r65269
2007-07-20 20:38:05 +00:00
Steven Bennetts ad94bca0d2 merge -r 56696:57082 Branch_1-13-2 2007-01-24 20:21:23 +00:00
Aaron Brashears 4617a37edf corrected, removed, and updated comments throughout the code to be more useful. no code changes. SL-13762 2007-01-03 21:05:41 +00:00
James Cook 420b91db29 Print done when done. 2007-01-02 08:33:20 +00:00