From 6c2cf4c457138e887f374157dd4bbeddc6ec567c Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Wed, 29 Jan 2020 16:10:05 +0100 Subject: Fix access after move MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We can't both access and move an object in the same expression. This is undefined behavior and causes crashes with gcc 5. Change-Id: I916927c27c7dec0f15620dfd22c795267a6bddc0 Reviewed-by: Jüri Valdmann --- chromium/content/browser/data_url_loader_factory.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chromium/content/browser/data_url_loader_factory.cc b/chromium/content/browser/data_url_loader_factory.cc index 8bda8b8e748..36436c2d9f1 100644 --- a/chromium/content/browser/data_url_loader_factory.cc +++ b/chromium/content/browser/data_url_loader_factory.cc @@ -83,7 +83,7 @@ void DataURLLoaderFactory::CreateLoaderAndStart( client->OnStartLoadingResponseBody(std::move(consumer)); - auto write_data = std::make_unique(); + auto write_data = new WriteData(); write_data->client = std::move(client); write_data->data = std::move(data); write_data->producer = @@ -95,7 +95,7 @@ void DataURLLoaderFactory::CreateLoaderAndStart( std::make_unique( string_piece, mojo::StringDataSource::AsyncWritingMode:: STRING_STAYS_VALID_UNTIL_COMPLETION), - base::BindOnce(OnWrite, std::move(write_data))); + base::BindOnce(OnWrite, std::unique_ptr(write_data))); } void DataURLLoaderFactory::Clone( -- cgit v1.2.1