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) {
325325}
326326
327327static void multiThreadedPageIn (const DeferredFiles &deferred) {
328- static std::deque<DeferredFiles> queue;
328+ static std::deque<std::unique_ptr< DeferredFiles> > queue;
329329 static std::thread *running;
330330 static std::mutex mutex;
331331
@@ -339,12 +339,13 @@ static void multiThreadedPageIn(const DeferredFiles &deferred) {
339339 }
340340
341341 if (!deferred.empty ()) {
342- queue.emplace_back (deferred);
342+ queue.emplace_back (
343+ std::unique_ptr<DeferredFiles>(new DeferredFiles (deferred)));
343344 if (!running)
344345 running = new std::thread ([&]() {
345346 mutex.lock ();
346347 while (!queue.empty ()) {
347- const DeferredFiles &deferred = queue.front ();
348+ const DeferredFiles &deferred = * queue.front ();
348349 mutex.unlock ();
349350 multiThreadedPageInBackground (deferred);
350351 mutex.lock ();
You can’t perform that action at this time.
0 commit comments