File tree Expand file tree Collapse file tree 1 file changed +4
-3
lines changed Expand file tree Collapse file tree 1 file changed +4
-3
lines changed Original file line number Diff line number Diff line change @@ -325,7 +325,7 @@ void multiThreadedPageInBackground(const DeferredFiles &deferred) {
325
325
}
326
326
327
327
static void multiThreadedPageIn (const DeferredFiles &deferred) {
328
- static std::deque<DeferredFiles> queue;
328
+ static std::deque<std::unique_ptr< DeferredFiles> > queue;
329
329
static std::thread *running;
330
330
static std::mutex mutex;
331
331
@@ -339,12 +339,13 @@ static void multiThreadedPageIn(const DeferredFiles &deferred) {
339
339
}
340
340
341
341
if (!deferred.empty ()) {
342
- queue.emplace_back (deferred);
342
+ queue.emplace_back (
343
+ std::unique_ptr<DeferredFiles>(new DeferredFiles (deferred)));
343
344
if (!running)
344
345
running = new std::thread ([&]() {
345
346
mutex.lock ();
346
347
while (!queue.empty ()) {
347
- const DeferredFiles &deferred = queue.front ();
348
+ const DeferredFiles &deferred = * queue.front ();
348
349
mutex.unlock ();
349
350
multiThreadedPageInBackground (deferred);
350
351
mutex.lock ();
You can’t perform that action at this time.
0 commit comments