[content shell] don't use webkit_support functions to manipulate URLs
In single-process mode, WebKit isn't yet initialized before we start a renderer, so we can't pass around WebURLs BUG=111316 TEST=content_shell --dump-render-tree --single-process doesn't crash Review URL: https://codereview.chromium.org/11151007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161839 0039d316-1c4b-4281-b951-d872f2087c98
This commit is contained in:
@ -7,12 +7,15 @@
|
||||
#include <iostream>
|
||||
|
||||
#include "base/command_line.h"
|
||||
#include "base/file_path.h"
|
||||
#include "base/file_util.h"
|
||||
#include "base/logging.h"
|
||||
#include "base/memory/scoped_ptr.h"
|
||||
#include "base/threading/thread_restrictions.h"
|
||||
#include "content/public/browser/browser_main_runner.h"
|
||||
#include "content/shell/shell_switches.h"
|
||||
#include "content/shell/webkit_test_runner_host.h"
|
||||
#include "net/base/net_util.h"
|
||||
#include "webkit/support/webkit_support.h"
|
||||
|
||||
namespace {
|
||||
@ -40,11 +43,14 @@ GURL GetURLForLayoutTest(const char* test_name,
|
||||
}
|
||||
if (expected_pixel_hash)
|
||||
*expected_pixel_hash = pixel_hash;
|
||||
GURL test_url = webkit_support::CreateURLForPathOrURL(path_or_url);
|
||||
{
|
||||
GURL test_url(path_or_url);
|
||||
if (!(test_url.is_valid() && test_url.has_scheme()))
|
||||
test_url = net::FilePathToFileURL(FilePath(path_or_url));
|
||||
FilePath local_path;
|
||||
if (net::FileURLToFilePath(test_url, &local_path)) {
|
||||
// We're outside of the message loop here, and this is a test.
|
||||
base::ThreadRestrictions::ScopedAllowIO allow_io;
|
||||
webkit_support::SetCurrentDirectoryForFileURL(test_url);
|
||||
file_util::SetCurrentDirectory(local_path.DirName());
|
||||
}
|
||||
return test_url;
|
||||
}
|
||||
|
Reference in New Issue
Block a user