diff options
| author | pepper <3782201+rohvani@users.noreply.github.com> | 2026-09-21 17:15:04 -0400 |
|---|---|---|
| committer | pepper <3782201+rohvani@users.noreply.github.com> | 2026-09-23 15:24:01 -0400 |
| commit | e48a615aa0ff9848ce45caef8974313d92a05b2e (patch) | |
| tree | 9771dc1b39644778a3e92ca7790bf6e8793dd463 /indra/newview/llfloaterconversationpreview.cpp | |
| parent | 2668047ea5fc8c6a271621510db8eb25a2b24502 (diff) | |
Simplify transcript worker ownership and publication boundaries
Let the legacy worker own its filename and completion signal. Remove
manual signal deletion and the unused thread accessor together with
Preview's mutex; both loaders publish pages on the main loop.
Keep save/delete exclusion and release it before notifying observers.
Expose the captured-path reader directly, with account and privacy checks
at main-loop dispatch and publication, and remove the redundant bridge.
Diffstat (limited to 'indra/newview/llfloaterconversationpreview.cpp')
| -rw-r--r-- | indra/newview/llfloaterconversationpreview.cpp | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/indra/newview/llfloaterconversationpreview.cpp b/indra/newview/llfloaterconversationpreview.cpp index 3221abaeca..4f39b65371 100644 --- a/indra/newview/llfloaterconversationpreview.cpp +++ b/indra/newview/llfloaterconversationpreview.cpp @@ -52,7 +52,6 @@ LLFloaterConversationPreview::LLFloaterConversationPreview(const LLSD& session_i mPageSize(CONVERSATION_HISTORY_PAGE_SIZE), mAccountName(session_id[LL_FCP_ACCOUNT_NAME]), mCompleteName(session_id[LL_FCP_COMPLETE_NAME]), - mMutex(), mShowHistory(false), mMessages(NULL), mHistoryThreadsBusy(false), @@ -127,9 +126,6 @@ void LLFloaterConversationPreview::setPages(std::list<LLSD>* messages, const std { if(file_name == mChatHistoryFileName && messages) { - // additional protection to avoid changes of mMessages in setPages() - LLMutexLock lock(&mMutex); - // Preserve the reader's distance from the newest page while asynchronous // reloads replace the backing list. const S32 old_last_page = mMessages && !mMessages->empty() @@ -155,11 +151,6 @@ void LLFloaterConversationPreview::setPages(std::list<LLSD>* messages, const std getChild<LLTextBox>("page_num_label")->setValue(total_page_num); mShowHistory = true; } - LLLoadHistoryThread* loadThread = LLLogChat::getInstance()->getLoadHistoryThread(mSessionID); - if (loadThread) - { - loadThread->removeLoadEndSignal(boost::bind(&LLFloaterConversationPreview::setPages, this, _1, _2)); - } } void LLFloaterConversationPreview::draw() @@ -364,8 +355,7 @@ void LLFloaterConversationPreview::invalidateHistory() void LLFloaterConversationPreview::showHistory() { - // additional protection to avoid changes of mMessages in setPages - LLMutexLock lock(&mMutex); + // Both loaders publish on the main loop, so pages stay stable during rendering. mChatHistory->clear(); if(mMessages == NULL || !mMessages->size() || mCurrentPage * mPageSize >= mMessages->size()) { |
