diff options
| author | Brad Kittenbrink <brad@lindenlab.com> | 2019-02-27 16:55:08 -0800 | 
|---|---|---|
| committer | Nat Goodspeed <nat@lindenlab.com> | 2020-03-25 18:39:21 -0400 | 
| commit | a26905b0c5570644bb7a65b952accfe2c3f81c33 (patch) | |
| tree | f8cfc4d1bfe26191ead7f9a9208c6ba456ff9cdb | |
| parent | 96639a8d09862eca95c483336d603aeb85694370 (diff) | |
Added try/catch closer to source of error so LL_ERRS fatal can be more useful for debugging;
| -rw-r--r-- | indra/llcommon/lleventcoro.cpp | 12 | 
1 files changed, 10 insertions, 2 deletions
| diff --git a/indra/llcommon/lleventcoro.cpp b/indra/llcommon/lleventcoro.cpp index 47d99f0050..367ddf485d 100644 --- a/indra/llcommon/lleventcoro.cpp +++ b/indra/llcommon/lleventcoro.cpp @@ -138,9 +138,17 @@ LLBoundListener postAndSuspendSetup(const std::string& callerName,      // the specified LLEventPump with that callback      LLBoundListener connection(          replyPump.getPump().listen(listenerName, -                                   [&promise, consuming](const LLSD& result) +                                   [&promise, consuming, listenerName](const LLSD& result)                                     { -                                       promise.set_value(result); +                                       try +                                       { +                                           promise.set_value(result); +                                       } +                                       catch(boost::fibers::promise_already_satisfied & ex) +                                       { +                                           LL_ERRS("lleventcoro") << "promise already satisfied in '" +                                               << listenerName << "' "  << ex.what() << LL_ENDL; +                                       }                                         return consuming;                                     }));      // skip the "post" part if requestPump is default-constructed | 
