Details:
Instead of copying shared pointer, raw pointer was used, that cause crash, since notification responder object was accessed after it was destroyed.
Replaced usage copying of raw pointer instead of copying shared pointer of notification responder object, that should live after notification destroyed.
--HG--
branch : product-engine
Details:
1 Provided passing necessary is_group parameter to LLPostponedNotification::add<LLPostponedServerObjectNotification> method call;
3 Corrected handling group name in LLPostponedNotification::onCachedNameReceived;
2 Added check on retrieved name from cache name and replacement with fallback value.
reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/743/
--HG--
branch : product-engine
Utilized old save and load notification code.
Main concern was with notifications that have complex responder - UserGiveItem, ObjectGiveItem. Those responders are object with own fields that need to persist through sessions.
Notifications that should be saved are marked with persist="true" in notifications.xml
Notifications using functor responders are saved automatically.
Notifications using object responders need additional tuning. Responder object should be a) serializable(implement LLNotificationResponderInterface), b) registered with LLResponderRegistry.
At this point following notifications persist through sessions: UserGiveItem, ObjectGiveItem, TeleportOffered, FrienshipOffered.
Reviewed by Mike Antipov - https://codereview.productengine.com/secondlife/r/211/
--HG--
branch : notifications
* added class for LLPostponedNotification to rpovide possibility postpone adding notification to notifications system till sender avatar name will be received from cache name;
* rolled back changes related to fix of EXT-4779;
* avoided passing avatar id when logging 'Object Return' notification to nearby chat;
eviewed by Vadim Savchuk at https://jira.secondlife.com/browse/EXT-6373
--HG--
branch : product-engine
Implemented requested feature - "Resolving offer in the notification toast shouldn't remove offer panel form IM log until IM session is restarted"
--HG--
branch : product-engine
I made it about a year and a half ago; Zero found it while reading code. I had added a return value to LLSD::insert(), but a) did it wrong, and b) broke the STL-like semantics of insert(). So I've put insert() back to returning void and created LLSD::with(), which does what my earlier insert() did. The compiler then caught all the cases where insert()'s return value were being used, and I changed those to use with() instead.
moved a bunch of template class statics to cpp files
also added filename parameter to LLXUIParser::readXUI for better debugging of XUI errors
reviewed by James
svn merge -r118927:118939
svn+ssh://svn.lindenlab.com/svn/linden/branches/viewer/viewer-1.23.0-merge-2-combo-QAR-1476
this is a composite of...
svn merge -r115088:118182
svn+ssh://svn.lindenlab.com/svn/linden/branches/viewer/viewer_1-23
conflicts resolved:
C doc/contributions.txt
C indra/llaudio/audioengine.cpp
C indra/newview/CMakeLists.txt
C indra/newview/llfloaterlandholdings.cpp
C indra/newview/llpaneldirbrowser.cpp
C indra/newview/llpanelgrouplandmoney.cpp
C indra/newview/llpreviewscript.cpp
C indra/newview/llviewermenu.cpp
C indra/newview/skins/default/xui/en-us/notifications.xml
and...
svn merge -r116937:118673
svn+ssh://svn.lindenlab.com/svn/linden/branches/server/server-1.26
minor-to-trivial conflicts resolved:
C indra/llcommon/llversionserver.h
C indra/newsim/llrezdata.cpp
C indra/newsim/llstate.cpp
C indra/upgrade/schema_version/sequence/3/index_log_paypal.sql