Commit Graph

69 Commits (b32cd27b4c1c3fbefc8ef141a450e868ae3fdc35)

Author SHA1 Message Date
Ansariel 4b923d4291 Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm
# Conflicts:
#	.github/workflows/build.yaml
#	indra/newview/VIEWER_VERSION.txt
#	indra/newview/llappviewer.cpp
#	indra/newview/llmeshrepository.cpp
#	indra/newview/llviewerregion.cpp
#	indra/newview/llviewerregion.h
2023-08-24 20:48:55 +02:00
Ansariel aac968e43a Merge branch 'DRTVWR-559' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/llcommon/llqueuedthread.cpp
#	indra/llcommon/lluuid.cpp
#	indra/llimage/llimageworker.h
#	indra/newview/app_settings/settings.xml
#	indra/newview/llappviewerwin32.cpp
#	indra/newview/llfilepicker.cpp
#	indra/newview/llviewercontrol.cpp
#	indra/newview/llviewerobject.h
#	indra/newview/llvovolume.cpp
#	indra/newview/pipeline.cpp
2023-05-17 23:23:28 +02:00
Ansariel d927ba575a Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm
# Conflicts:
#	indra/llcommon/llqueuedthread.cpp
#	indra/llcommon/llqueuedthread.h
#	indra/llcommon/lluuid.cpp
#	indra/llcommon/llworkerthread.cpp
#	indra/llimage/llimageworker.h
#	indra/newview/VIEWER_VERSION.txt
#	indra/newview/llappviewer.cpp
#	indra/newview/llappviewerwin32.cpp
#	indra/newview/llfilepicker.cpp
#	indra/newview/lltexturefetch.cpp
#	indra/newview/llviewerdisplay.cpp
#	indra/newview/llviewermenu.cpp
2023-05-17 21:40:54 +02:00
Brad Linden 2f44377b3e Merge remote-tracking branch 'origin/main' into DRTVWR-559 2023-05-17 11:17:48 -07:00
Ansariel 5323ccf3b3 Merge branch 'DRTVWR-559' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/llcommon/llprofiler.h
#	indra/llcommon/llprofilercategories.h
#	indra/llcommon/lluuid.cpp
#	indra/newview/app_settings/settings.xml
#	indra/newview/featuretable.txt
#	indra/newview/llagent.cpp
#	indra/newview/llface.cpp
#	indra/newview/llviewerobject.cpp
#	indra/newview/llviewertexture.cpp
2023-03-20 11:14:08 +01:00
Ansariel 1772ae4c6c Merge branch 'DRTVWR-577-maint-S' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/newview/app_settings/settings.xml
#	indra/newview/llappviewerwin32.cpp
#	indra/newview/skins/default/xui/en/floater_about_land.xml
#	indra/newview/skins/default/xui/en/panel_preferences_chat.xml
2023-03-07 14:21:43 +01:00
Dave Parks 81f2d5b181 DRTVWR-559 Return to MD5 for LLUUID operations. Existing LLUUID API implementations must not change, but may add "fast" variants where appropriate in the future. 2023-03-06 10:58:46 -06:00
Ansariel f4182ddc7f Merge branch 'DRTVWR-559' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/newview/app_settings/settings.xml
#	indra/newview/llreflectionmapmanager.cpp
#	indra/newview/llspatialpartition.cpp
#	indra/newview/llviewercontrol.cpp
#	indra/newview/llviewerdisplay.cpp
#	indra/newview/llviewermenu.cpp
#	indra/newview/llviewershadermgr.cpp
#	indra/newview/llworldmapview.cpp
#	indra/newview/pipeline.cpp
#	indra/newview/skins/default/xui/en/panel_tools_texture.xml
2023-03-06 17:11:43 +01:00
Ansariel f65cddf860 Merge branch 'contribute' of https://github.com/secondlife/viewer
# Conflicts:
#	autobuild.xml
#	indra/llcommon/llsdserialize.cpp
#	indra/llcommon/lluuid.cpp
#	indra/llcommon/lluuid.h
#	indra/llprimitive/llmodel.cpp
#	indra/newview/llfilepicker.cpp
#	indra/newview/llfilepicker.h
#	indra/newview/llfilepicker_mac.h
#	indra/newview/llfilepicker_mac.mm
#	indra/newview/llinventorymodel.cpp
#	indra/newview/llviewerwearable.h
#	indra/newview/skins/default/xui/da/floater_about.xml
#	indra/newview/skins/default/xui/da/floater_fs_voice_controls.xml
#	indra/newview/skins/default/xui/da/menu_inspect_self_gear.xml
#	indra/newview/skins/default/xui/de/floater_about.xml
#	indra/newview/skins/default/xui/de/floater_perm_prefs.xml
#	indra/newview/skins/default/xui/de/menu_inspect_avatar_gear.xml
#	indra/newview/skins/default/xui/de/menu_inspect_self_gear.xml
#	indra/newview/skins/default/xui/en/floater_about.xml
#	indra/newview/skins/default/xui/en/strings.xml
#	indra/newview/skins/default/xui/es/floater_about.xml
#	indra/newview/skins/default/xui/es/menu_inspect_avatar_gear.xml
#	indra/newview/skins/default/xui/es/menu_inspect_self_gear.xml
#	indra/newview/skins/default/xui/fr/floater_about.xml
#	indra/newview/skins/default/xui/fr/floater_perm_prefs.xml
#	indra/newview/skins/default/xui/fr/menu_inspect_avatar_gear.xml
#	indra/newview/skins/default/xui/fr/menu_inspect_self_gear.xml
#	indra/newview/skins/default/xui/it/floater_about.xml
#	indra/newview/skins/default/xui/it/floater_perm_prefs.xml
#	indra/newview/skins/default/xui/it/menu_inspect_avatar_gear.xml
#	indra/newview/skins/default/xui/it/menu_inspect_self_gear.xml
#	indra/newview/skins/default/xui/ja/floater_fs_voice_controls.xml
#	indra/newview/skins/default/xui/ja/menu_inspect_self_gear.xml
#	indra/newview/skins/default/xui/pl/floater_about.xml
#	indra/newview/skins/default/xui/pl/floater_about_land.xml
#	indra/newview/skins/default/xui/pl/floater_animation_bvh_preview.xml
#	indra/newview/skins/default/xui/pl/floater_associate_listing.xml
#	indra/newview/skins/default/xui/pl/notifications.xml
#	indra/newview/skins/default/xui/pl/panel_group_creation_sidetray.xml
#	indra/newview/skins/default/xui/pl/panel_outfit_gallery.xml
#	indra/newview/skins/default/xui/pl/panel_outfit_snapshot_inventory.xml
#	indra/newview/skins/default/xui/pl/panel_profile_firstlife.xml
#	indra/newview/skins/default/xui/pl/panel_profile_pick.xml
#	indra/newview/skins/default/xui/pl/panel_profile_picks.xml
#	indra/newview/skins/default/xui/pl/panel_profile_secondlife.xml
#	indra/newview/skins/default/xui/pl/panel_region_access.xml
#	indra/newview/skins/default/xui/pl/panel_script_experience.xml
#	indra/newview/skins/default/xui/pl/strings.xml
#	indra/newview/skins/default/xui/pt/floater_about.xml
#	indra/newview/skins/default/xui/pt/floater_fs_voice_controls.xml
#	indra/newview/skins/default/xui/pt/menu_inspect_self_gear.xml
#	indra/newview/skins/default/xui/ru/floater_about.xml
#	indra/newview/skins/default/xui/ru/floater_perm_prefs.xml
#	indra/newview/skins/default/xui/ru/menu_inspect_avatar_gear.xml
#	indra/newview/skins/default/xui/ru/menu_inspect_self_gear.xml
#	indra/newview/skins/default/xui/tr/floater_about.xml
#	indra/newview/skins/default/xui/tr/floater_fs_voice_controls.xml
#	indra/newview/skins/default/xui/tr/menu_inspect_self_gear.xml
#	indra/newview/skins/default/xui/zh/floater_about.xml
#	indra/newview/skins/default/xui/zh/floater_fs_voice_controls.xml
#	indra/newview/skins/default/xui/zh/menu_inspect_self_gear.xml
2023-03-01 12:54:24 +01:00
Henri Beauchamp d998bcbfb5 SL-19110 revert LLUUID::combine() to old algorithm to match server code. (#75)
As it happens, the change in the LLUUID::combine() algorithm introduced by one
of my previous commits is causing invalid assets creation (seen with
some clothing items, such as Shape and Universal types); obviously, the server
is using the old algorithm for UUID validation purpose of these assets.

This commit reverts LLUUID::combine() code to use LLMD5.
2023-02-13 19:36:54 +02:00
Henri Beauchamp 3561e9b5d5 SL-19110 revert LLUUID::combine() to old algorithm to match server code. (#75)
As it happens, the change in the LLUUID::combine() algorithm introduced by one
of my previous commits is causing invalid assets creation (seen with
some clothing items, such as Shape and Universal types); obviously, the server
is using the old algorithm for UUID validation purpose of these assets.

This commit reverts LLUUID::combine() code to use LLMD5.
2023-02-13 19:36:09 +02:00
Henri Beauchamp e2836313a8
SL-19110 revert LLUUID::combine() to old algorithm to match server code. (#75)
As it happens, the change in the LLUUID::combine() algorithm introduced by one
of my previous commits is causing invalid assets creation (seen with
some clothing items, such as Shape and Universal types); obviously, the server
is using the old algorithm for UUID validation purpose of these assets.

This commit reverts LLUUID::combine() code to use LLMD5.
2023-02-13 19:34:00 +02:00
Andrey Kleshchev 6c54c9f8a9 Merge branch 'main' into DRTVWR-577-maint-S
# Conflicts:
#	indra/llcommon/llsdserialize.cpp
#	indra/llcommon/llsdserialize.h
#	indra/newview/llfilepicker.h
#	indra/newview/llfilepicker_mac.h
#	indra/newview/llfilepicker_mac.mm
2023-02-09 22:33:52 +02:00
Henri Beauchamp 1eb2b23f4b
SL-19159 Faster LLUUID and LLMaterialID hashing for std and boost containers keys (#70)
LLUUID and LLMaterialID already have an excellent entropy and value dispersion; there is therefore strictly no need to further (slowly) hash their value for use with std and boost libraries containers.

This commit adds a trivial getDigest64() method to both LLUUID and LLMaterialID (which simply returns the XOR of the two 64 bits long words their value is made of), and uses it in std::hash and hash_value() specializations for use with containers.
2023-02-07 14:51:53 +02:00
Ansariel fb727de6e3 Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm
# Conflicts:
#	indra/llcommon/llsdserialize.cpp
#	indra/llcommon/llsdserialize.h
#	indra/newview/llfilepicker.h
#	indra/newview/llfilepicker_mac.h
#	indra/newview/llfilepicker_mac.mm
#	indra/newview/llmeshrepository.cpp
2023-02-03 22:33:41 +01:00
Ansariel 2ff9900cd9 Merge branch 'DRTVWR-577-maint-S' of https://github.com/secondlife/viewer
# Conflicts:
#	autobuild.xml
#	indra/llcommon/lluuid.cpp
#	indra/llprimitive/llmodel.cpp
#	indra/newview/llfilepicker.cpp
#	indra/newview/llfilepicker_mac.mm
#	indra/newview/skins/default/xui/da/floater_about.xml
#	indra/newview/skins/default/xui/de/floater_about.xml
#	indra/newview/skins/default/xui/en/floater_about.xml
#	indra/newview/skins/default/xui/es/floater_about.xml
#	indra/newview/skins/default/xui/fr/floater_about.xml
#	indra/newview/skins/default/xui/it/floater_about.xml
#	indra/newview/skins/default/xui/pt/floater_about.xml
#	indra/newview/skins/default/xui/ru/floater_about.xml
#	indra/newview/skins/default/xui/tr/floater_about.xml
#	indra/newview/skins/default/xui/zh/floater_about.xml
2023-02-03 20:57:40 +01:00
Ansariel 73e5615d43 Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm
# Conflicts:
#	indra/llimagej2coj/llimagej2coj.cpp
#	indra/newview/VIEWER_VERSION.txt
#	indra/newview/app_settings/shaders/class1/deferred/skyF.glsl
#	indra/newview/app_settings/shaders/class1/deferred/skyV.glsl
#	indra/newview/app_settings/shaders/class2/deferred/skyF.glsl
#	indra/newview/llsettingsvo.cpp
2023-02-03 11:11:13 +01:00
Brad Linden 5fabfa50d7 Merge remote-tracking branch 'origin/main' into DRTVWR-559 2023-02-02 12:11:40 -08:00
Ansariel 6cbca4da71 Merge branch 'DRTVWR-559' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/llcommon/llprofiler.h
#	indra/llcommon/lluuid.cpp
#	indra/llprimitive/llmodel.cpp
#	indra/llrender/llrendertarget.cpp
#	indra/newview/app_settings/settings.xml
#	indra/newview/app_settings/shaders/class1/deferred/multiPointLightF.glsl
#	indra/newview/app_settings/shaders/class1/deferred/pointLightF.glsl
#	indra/newview/llviewerwindow.cpp
#	indra/newview/pipeline.cpp
#	indra/newview/skins/default/xui/da/floater_about.xml
#	indra/newview/skins/default/xui/de/floater_about.xml
#	indra/newview/skins/default/xui/en/floater_about.xml
#	indra/newview/skins/default/xui/es/floater_about.xml
#	indra/newview/skins/default/xui/fr/floater_about.xml
#	indra/newview/skins/default/xui/it/floater_about.xml
#	indra/newview/skins/default/xui/pt/floater_about.xml
#	indra/newview/skins/default/xui/ru/floater_about.xml
#	indra/newview/skins/default/xui/tr/floater_about.xml
#	indra/newview/skins/default/xui/zh/floater_about.xml
2023-02-01 11:40:17 +01:00
Henri Beauchamp 473ade2696 SL-19110 Fast hashing classes for use in place of the slow LLMD5, where speed matters. (#64)
This commit adds the HBXX64 and HBXX128 classes for use as a drop-in
replacement for the slow LLMD5 hashing class, where speed matters and
backward compatibility (with standard hashing algorithms) and/or
cryptographic hashing qualities are not required.
It also replaces LLMD5 with HBXX* in a few existing hot (well, ok, just
"warm" for some) paths meeting the above requirements, while paving the way for
future use cases, such as in the DRTVWR-559 and sibling branches where the slow
LLMD5 is used (e.g. to hash materials and vertex buffer cache entries), and
could be use such a (way) faster algorithm with very significant benefits and
no negative impact.

Here is the comment I added in indra/llcommon/hbxx.h:

// HBXXH* classes are to be used where speed matters and cryptographic quality
// is not required (no "one-way" guarantee, though they are likely not worst in
// this respect than MD5 which got busted and is now considered too weak). The
// xxHash code they are built upon is vectorized and about 50 times faster than
// MD5. A 64 bits hash class is also provided for when 128 bits of entropy are
// not needed. The hashes collision rate is similar to MD5's.
// See https://github.com/Cyan4973/xxHash#readme for details.
2023-01-31 22:04:14 +02:00
Henri Beauchamp 9438ef5f79
SL-19110 Fast hashing classes for use in place of the slow LLMD5, where speed matters. (#64)
This commit adds the HBXX64 and HBXX128 classes for use as a drop-in
replacement for the slow LLMD5 hashing class, where speed matters and
backward compatibility (with standard hashing algorithms) and/or
cryptographic hashing qualities are not required.
It also replaces LLMD5 with HBXX* in a few existing hot (well, ok, just
"warm" for some) paths meeting the above requirements, while paving the way for
future use cases, such as in the DRTVWR-559 and sibling branches where the slow
LLMD5 is used (e.g. to hash materials and vertex buffer cache entries), and
could be use such a (way) faster algorithm with very significant benefits and
no negative impact.

Here is the comment I added in indra/llcommon/hbxx.h:

// HBXXH* classes are to be used where speed matters and cryptographic quality
// is not required (no "one-way" guarantee, though they are likely not worst in
// this respect than MD5 which got busted and is now considered too weak). The
// xxHash code they are built upon is vectorized and about 50 times faster than
// MD5. A 64 bits hash class is also provided for when 128 bits of entropy are
// not needed. The hashes collision rate is similar to MD5's.
// See https://github.com/Cyan4973/xxHash#readme for details.
2023-01-31 18:42:51 +02:00
Ansariel 9ee1a75474 Merge branch 'DRTVWR-570-maint-Q' of https://bitbucket.org/lindenlab/viewer
# Conflicts:
#	indra/llcharacter/llkeyframemotion.cpp
#	indra/llcommon/lluuid.cpp
#	indra/llcommon/lluuid.h
#	indra/llui/llscrolllistctrl.cpp
#	indra/llui/llscrolllistctrl.h
#	indra/newview/app_settings/settings.xml
#	indra/newview/llfloatersettingsdebug.cpp
#	indra/newview/llfloatersettingsdebug.h
#	indra/newview/skins/default/xui/en/floater_settings_debug.xml
#	indra/newview/skins/default/xui/en/panel_preferences_privacy.xml
2022-11-01 17:17:56 +01:00
Rye Mutt 228f5b2f12 Restore LLUUID to a plain old data type in a post-c++11 world 2022-10-25 09:50:40 -04:00
Ansariel 6663bc6f85 Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm
# Conflicts:
#	autobuild.xml
#	indra/llfilesystem/llfilesystem.cpp
#	indra/newview/CMakeLists.txt
#	indra/newview/llappviewer.cpp
#	indra/newview/lldrawpoolavatar.cpp
#	indra/newview/llviewercontrol.cpp
2021-12-16 09:49:35 +01:00
Ansariel 627eecd577 Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm 2021-11-16 08:22:59 +01:00
Ansariel d06c357bab Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm 2021-11-12 11:02:00 +01:00
Beq ea4f6931ab Significantly faster UUID to string
TBD merge into the std::string version, for a more general speedup.
2021-11-03 16:07:57 +00:00
Ansariel e48376d29b Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm 2021-06-08 17:33:00 +02:00
Callum Prentice ad9ed0a94d Merge with tip of Master after Viewer release 2021-06-07 18:55:00 -07:00
Ansariel dde3c2c7a8 Merge branch 'DRTVWR-519' of https://bitbucket.org/lindenlab/viewer 2021-06-05 14:03:30 +02:00
Nat Goodspeed d313d7021f SL-15200: Add LLApp::sleep(duration) methods.
Two sleep() methods: one accepting F32Milliseconds, or in general any LLUnits
time class; the other accepting any std::chrono::duration.

The significant thing about each of these sleep() methods, as opposed to any
freestanding sleep() function, is that it only sleeps until the app starts
shutdown. Moreover, it returns true if it slept for the whole specified
duration, false if it woke for app shutdown.

This is accomplished by making LLApp::sStatus be an LLScalarCond<EAppStatus>
instead of a plain EAppStatus enum, and by making setStatus() call set_all()
each time the value changes. Then each new sleep() method can call
wait_for_unequal(duration, APP_STATUS_RUNNING).

Introducing llcond.h into llapp.h triggered an #include circularity because
llthread.h #included llapp.h even though it didn't reference anything from it.
Removed. This, in turn, necessitated adding #include "llapp.h" to several .cpp
files that reference LLApp but had been depending on other header files to
drag in llapp.h.
2021-05-17 13:37:13 -04:00
Ansariel 93f1998a47 Merge branch 'DRTVWR-525' of https://bitbucket.org/lindenlab/viewer 2021-01-08 23:06:41 +01:00
Dave Houlton 7cd076c796 DRTVWR-510 remove all LL_SOLARIS conditionals 2020-10-08 17:16:22 -06:00
Nat Goodspeed 5e7df752a6 DRTVWR-494: Use std:🧵:id for LLThread::currentID().
LLThread::currentID() used to return a U32, a distinct unsigned value
incremented by explicitly constructing LLThread or by calling LLThread::
registerThreadID() early in a thread launched by other means. The latter
imposed an unobvious requirement on new code based on std::thread. Using
std:🧵:id instead delegates to the compiler/library the problem of
distinguishing threads launched by any means.

Change lots of explicit U32 declarations. Introduce LLThread::id_t typedef to
avoid having to run around fixing uses again if we later revisit this decision.

LLMutex, which stores an LLThread::id_t, wants a distinguished value meaning
NO_THREAD, and had an enum with that name. But as std:🧵:id promises
that the default-constructed value is distinct from every valid value,
NO_THREAD becomes unnecessary and goes away.

Because LLMutex now stores LLThread::id_t instead of U32, make llmutex.h
#include "llthread.h" instead of the other way around. This makes LLMutex an
incomplete type within llthread.h, so move LLThread::lockData() and
unlockData() to the .cpp file. Similarly, remove llrefcount.h's #include
"llmutex.h" to break circularity; instead forward-declare LLMutex.

It turns out that a number of source files assumed that #include "llthread.h"
would get the definition for LLMutex. Sprinkle #include "llmutex.h" as needed.

In the SAFE_SSL code in llcorehttp/httpcommon.cpp, there's an ssl_thread_id()
callback that returns an unsigned long to the SSL library. When LLThread::
currentID() was U32, we could simply return that. But std:🧵:id is very
deliberately opaque, and can't be reinterpret_cast to unsigned long.
Fortunately it can be hashed because std::hash is specialized with that type.
2020-03-25 15:28:17 -04:00
Nicky Dasmijn a135b5b428 Merge remote-tracking branch 'origin/ll-vs2017' into fs-vs2017 2019-12-21 13:14:51 +01:00
Nat Goodspeed 55d7ac5e81 DRTVWR-494: Use std:🧵:id for LLThread::currentID().
LLThread::currentID() used to return a U32, a distinct unsigned value
incremented by explicitly constructing LLThread or by calling LLThread::
registerThreadID() early in a thread launched by other means. The latter
imposed an unobvious requirement on new code based on std::thread. Using
std:🧵:id instead delegates to the compiler/library the problem of
distinguishing threads launched by any means.

Change lots of explicit U32 declarations. Introduce LLThread::id_t typedef to
avoid having to run around fixing uses again if we later revisit this decision.

LLMutex, which stores an LLThread::id_t, wants a distinguished value meaning
NO_THREAD, and had an enum with that name. But as std:🧵:id promises
that the default-constructed value is distinct from every valid value,
NO_THREAD becomes unnecessary and goes away.

Because LLMutex now stores LLThread::id_t instead of U32, make llmutex.h
#include "llthread.h" instead of the other way around. This makes LLMutex an
incomplete type within llthread.h, so move LLThread::lockData() and
unlockData() to the .cpp file. Similarly, remove llrefcount.h's #include
"llmutex.h" to break circularity; instead forward-declare LLMutex.

It turns out that a number of source files assumed that #include "llthread.h"
would get the definition for LLMutex. Sprinkle #include "llmutex.h" as needed.

In the SAFE_SSL code in llcorehttp/httpcommon.cpp, there's an ssl_thread_id()
callback that returns an unsigned long to the SSL library. When LLThread::
currentID() was U32, we could simply return that. But std:🧵:id is very
deliberately opaque, and can't be reinterpret_cast to unsigned long.
Fortunately it can be hashed because std::hash is specialized with that type.
2019-12-06 16:31:49 -05:00
andreykproductengine 26fae750ba SL-10291 Replace apr_mutex with standard C++11 functionality 2019-01-14 22:04:44 +02:00
Nicky 7cc408a5cd Merge. 2018-04-10 12:33:45 +02:00
Nicky ef20e3f523 Replace ARP Mutex and Condition with std::mutx and std::conditional_variable 2018-04-05 12:02:12 +02:00
Nicky d7a0835432 Merge. 2016-09-26 21:12:34 +02:00
Nat Goodspeed 5e9d2f57c8 MAINT-5011: Use LLTHROW() instead of plain BOOST_THROW_EXCEPTION().
A level of preprocessor indirection lets us later change the implementation if
desired.
2016-08-17 11:36:24 -04:00
Nat Goodspeed 9c49a6c91d MAINT-5011: Introduce LLException base class for viewer exceptions.
This also introduces LLContinueError for exceptions which should interrupt
some part of viewer processing (e.g. the current coroutine) but should attempt
to let the viewer session proceed.

Derive all existing viewer exception classes from LLException rather than from
std::runtime_error or std::logic_error.

Use BOOST_THROW_EXCEPTION() rather than plain 'throw' to enrich the thrown
exception with source file, line number and containing function.
2016-07-19 16:25:25 -04:00
Ansariel 3192fe832f Merge viewer-quickgraphics 2016-03-08 01:41:31 +01:00
Oz Linden c8726aba30 remove execute permission from many files that should not have it 2015-11-10 09:48:56 -05:00
Ansariel 6197835813 Fix attribution for c3f57eb1a922 which was originally done by Drake Arconis (Sovereign Engineer) / Shyotl Kuhr 2014-08-29 08:37:35 +02:00
Ansariel 9a679a27ac Fix for misaligned unsigned ints in LLUUID; by Cinder Roxley 2014-08-26 21:47:04 +02:00
Richard Linden e340009fc5 second phase summer cleaning
replace llinfos, lldebugs, etc with new LL_INFOS(), LL_DEBUGS(), etc.
2013-08-09 17:11:19 -07:00
Richard Linden 0a96b47663 merge with viewer-release 2013-06-05 19:05:43 -07:00
Graham Madarasz bf6182daa8 Update Mac and Windows breakpad builds to latest 2013-03-29 07:50:08 -07:00
Richard Linden 0d8f1077a6 Automated merge with http://bitbucket.org/lindenlab/viewer-development 2013-01-04 16:46:25 -08:00