This is now necessary since the curl thread no longer syncs with the
main thread: it is possible that a request finishes after a texture
fetch thread was shot down but before curl was stopped, and curl
calling BufferedCurlEasyRequest::processOutput while objects that the
responder uses were already destructed (most notably
LLTextureFetch itself).
Fixes the issue with notifications not translating
Moves the UI initialization code block up a few lines to the same area as v-d and sunshine-external have it.
This more clearly shows how it relates with upstream code such that future changes in this area might avoid similar issues.
* Removes polling stuff (call to gMeshRepo.update()) which did
nothing but check if uploads already finished.
* Just creates and runs the state machine (AIMeshUpload) instead
of creating an LLThread derived class (LLMeshUploadThread) and
adding that to a queue, then have the main thread start it
after adding it to another queue in order to keep track of
the instances (both queues are gone).
* mWholeModelUploadURL was moved to the state machine, because
it needs a life time till the responders finishes (can't be
part of the thread object).
* LLMeshUploadThread is now derived from AIThreadImpl instead
of LLThread, so it can be run in a state machine thread.
* The call to LLHTTPClient::post is now done from the main
thread instead of from the thread, but I don't think that is
a problem.
Adds a std::map for hostname (or urls) --> PerHostRequestQueue
objects. The latter keeps track of the number of added curl easy
requests and decides if a new request should be throttled or
not, as well as provides the queue to queue throttled requests.
At the moment CurlConcurrentConnectionsPerHost is set to 16,
because things really don't work without LL supporting connection
reuse if we limit it to 2. CurlConcurrentConnectionsPerHost is
also set to non-persistent so that we can easily change it in the future
(once we decide on it's final value it can be set to persistent).
Enter: LLFloaterOutbox, floater_merchant_outbox, LLMarketplaceFunctions, LLPanelMarketplaceOutboxInventory, and panel_outbox_inventory
LLView now has childFromPoint() from v-d.
LLInventoryBridge{
Sync includes with v-d.
Let's ENABLE_MERCHANT_SEND_TO_MARKETPLACE_CONTEXT_MENU for ease of access and tweak it to work.
Uncomment related code.
Catch if we're moving objects into the outbox during pasteFromClipboard()
}
LLInventoryPanel: start_folder attribute for inventory_panels, this could be quite useful in the future
Sync LLToolDragAndDrop with Catznip/v-d
Add the outbox to the World menu, since that seems to involve most commerce. Perhaps we should add a menu entry to the outbox itself to open its floater?
Fix the inventory merchant menu entries, thanks Shyotl..
Merchant Outbox Strings!