PerformanceMonitor: Ensure module is initialized for all tests, to increase code coverage

Separated initialization from starting the metrics gather cycle, to make this possible.

This means crashes like the linked one will now be caught by the SessionRestore browser tests.

R=yoz@chromium.org, thakis@chromium.org
BUG=303564

Review URL: https://codereview.chromium.org/26352002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227794 0039d316-1c4b-4281-b951-d872f2087c98
[android] FlagChanger should only require root to set flags for Chrome.

BUG=304832
TEST=None
NOTRY=True

Review URL: https://codereview.chromium.org/26364002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227795 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 227795
cc: Add parition to ScopedPtrVector.

This patch adds the equivalent of std::partition to ScopedPtrVector.
This can be used to achieve a similar idiom to the following.

v.erase(std::remove_if(v.begin(), v.end(), Predicate), v.end())

remove_if isn't appropriate for ScopedPtrVector, since it doesn't
guarantee that all of the elements will still be in the container,
but partition can do roughly the same thing (with the exception
that the predicate has to be the negative version of remove_if one).

If v is a ScopedPtrVector, usage would be

v.erase(v.partition(WhatToKeepPredicate), v.end());

R=enne@chromium.org

Review URL: https://codereview.chromium.org/26497005

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227796 0039d316-1c4b-4281-b951-d872f2087c98
Browser Plugin: FilterURL URLs received from the renderer

BUG=293735
Test=Manually, navigations continue to work.

Review URL: https://codereview.chromium.org/26524002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227797 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 227797