Opera Software upstreamed commits

Upstreamed commits in Chromium: 308, Blink: 1461, V8: 20.

Click message to expand


Author Message When
Fix for a crash in NativeViewAccessibilityWin.
Review URL: https://codereview.chromium.org/521573003

Cr-Commit-Position: refs/heads/master@{#292605}
Update some paths from components/breakpad/ to components/crash/
It was moved in https://crrev.com/55b8563

Found by git grep 'components.*breakpad'


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

Cr-Commit-Position: refs/heads/master@{#292376}
Fix content build with OS X 10.9 SDK
Missing GL_TEXTURE_RECTANGLE_ARB definition if gl.h or glext.h is
not included.

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

Cr-Commit-Position: refs/heads/master@{#292159}
cc: Do bitmap conversion for RasterBuffer in the worker thread.
- Moved RasterBuffer from ResourceProvider to its own file.
It's now the public interface used by raster tasks.
- Added Acquire/ReleaseSkCanvas() interface into
- Bitmap conversion is now done in raster worker thread
through RasterBuffer interface.


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

Cr-Commit-Position: refs/heads/master@{#291910}
EventSender::KeyDown(): add "escape" and "backspace" key names.
..as their ASCII codes are used in various layout tests. Mapped to
VKEY_ESCAPE and VKEY_BACK, respectively.


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

Cr-Commit-Position: refs/heads/master@{#291110}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@291110 0039d316-1c4b-4281-b951-d872f2087c98
Fix mapping of weak DH key and remove unused error codes.
None of these error codes are actually reported back by BoringSSL.

SSL_R_WRONG_NUMBER_OF_KEY_BITS is changed to the proper
error code SSL_R_BAD_DH_P_LENGTH.

Test DH issue by loading https://demo.cmrg.net/


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

Cr-Commit-Position: refs/heads/master@{#291051}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@291051 0039d316-1c4b-4281-b951-d872f2087c98
parameterize http response header tests
Followup to https://codereview.chromium.org/391763002 to allow this
to build on more compilers (which can fail when using structs defined
in funtions in arraysize calls- as mentioned in base/macros.h).

By refactoring to use TEST_P we can skip the manual loop entirely.

TEST=net_unittests --gtest_filter=Http*

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

Cr-Commit-Position: refs/heads/master@{#291025}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@291025 0039d316-1c4b-4281-b951-d872f2087c98
Fix KDE Wallet backward compatibility when (de)serializing FormData.
The problem was introduced by https://codereview.chromium.org/365783002


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

Cr-Commit-Position: refs/heads/master@{#290677}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@290677 0039d316-1c4b-4281-b951-d872f2087c98
Revert "Add IPC benchmarking API to Blink TestRunner" (patchset #3 of https://codereview.chromium.org/478483005/ , commit 345949391e63d5237326eb16771ae48af0a2e881.)
Reason for revert:
Breaks fast/dom/Window LayoutTests


Original issue's description:
> Add IPC benchmarking API to Blink TestRunner
> This add an window.testRunner API that sends do-nothing IPC message
> roundtrip. This API can be used to build IPC benchmark using
> JavaScript.
> TEST=none (Will add blink-side LayoutTest once this is landed)
> BUG=402185
> R=darin@chromium.org, jam@chromim.org, jochen@chromium.org
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=290063

TBR=morrita@chromium.org, darin@chromium.org, jochen@chromium.org, jam@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#290153}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@290153 0039d316-1c4b-4281-b951-d872f2087c98
Fix Mac sandbox meta data access (reland)
We currently allow all metadata access due to
https://codereview.chromium.org/10539009/ made the for loop comparison
in Sandbox::AllowMetadataForPath() always false, when we actually only
want to allow access to the path and all its parent path until root.

Turn the for loop to a do/while loop instead as it's a better fit, also
add a test case for Sandbox::AllowMetadataForPath().

We also need file read meta data access to all the .dylibs we linked to.

It should only affect component builds on OS X 10.6 and utility process
as no other process is using this mechanism.


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

Cr-Commit-Position: refs/heads/master@{#289738}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@289738 0039d316-1c4b-4281-b951-d872f2087c98
Fix Mac sandbox meta data access
Sandbox::AllowMetadataForPath() currently allow all metadata access due to
https://codereview.chromium.org/10539009/ made the for loop comparison
in Sandbox::AllowMetadataForPath() always false, when we actually only
want to allow access to the path and all its parent path until root.

Turn the for loop to a do/while loop instead as it's a better fit, also
add a test case for Sandbox::AllowMetadataForPath().

It should only affect component builds on OS X 10.6 and utility process
as no other process is using this mechanism.

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

Cr-Commit-Position: refs/heads/master@{#289526}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@289526 0039d316-1c4b-4281-b951-d872f2087c98
Getting rid of net::LOAD_ENABLE_LOAD_CONTENT.
There are too many load flags. This one is only used by loader code.


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

Cr-Commit-Position: refs/heads/master@{#289318}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@289318 0039d316-1c4b-4281-b951-d872f2087c98
Stop using the needsSiteSpecificQuirks setting
It does nothing as of Blink r178756:


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

Cr-Commit-Position: refs/heads/master@{#289294}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@289294 0039d316-1c4b-4281-b951-d872f2087c98
make it possible to disable the use of libpci on linux again
When CL 430573002 landed, it forced the use of libpci on linux, but
many embedded systems lack this library (and probably lack a pci bus
altogether). Let's add a new config variable to make it possible to
disable the use of libpci.


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

Cr-Commit-Position: refs/heads/master@{#289262}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@289262 0039d316-1c4b-4281-b951-d872f2087c98
Don't increment lazy keep alive count on redirects.
The ChromeExtensionNetworkDelegate::OnBeforeURLRequest is called for new
requests as well as for redirects. This results in the lazy keep alive
count in extensions to be incremented several times if there is a redirect
but then it is decremented only ones when the request finishes. In consequence
the lazy extension page never shuts down because the count never reaches

With this commit requests that have been redirected at least once are
ignored when incrementing the keep alive count.


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

Cr-Commit-Position: refs/heads/master@{#289260}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@289260 0039d316-1c4b-4281-b951-d872f2087c98
avoid >> ambiguity in gin test
Followup from https://codereview.chromium.org/419673004


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

Cr-Commit-Position: refs/heads/master@{#289129}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@289129 0039d316-1c4b-4281-b951-d872f2087c98
Use ARRAYSIZE_UNSAFE when using types defined in a function
Small followup from https://codereview.chromium.org/423333002

This allows the test to compile on a greater range of toolchains (some
of which break when using types defined in a function with arraysize).

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

Cr-Commit-Position: refs/heads/master@{#289051}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@289051 0039d316-1c4b-4281-b951-d872f2087c98
include <limits> for std::numeric_limits
CL 435583003 adds usage of std::numeric_limits without including the
required header "limits" header.  Let's fix that.


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

Cr-Commit-Position: refs/heads/master@{#288986}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@288986 0039d316-1c4b-4281-b951-d872f2087c98
Stop using WebMediaPlayerClient::preload() and volume()
There is a "FIXME: Remove once calls on the Chromium-side have been
removed" for volume() in WebMediaPlayerClient.h. preload() is
similarly strange layering-wise, so get rid of that as well.

Simply store the values when they cannot immediately be forwarded to
the internal object.

In the case of WebMediaPlayerImpl::setVolume(), the value can always
be used immediately, so the setVolume() in DoLoad() appears to simply
have been unnecessary.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@288080 0039d316-1c4b-4281-b951-d872f2087c98
don't pretend to support dbus on windows in dbus_export.h
Since dbus is only used on linux, don't bother with windows specific symbol exporting.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@288034 0039d316-1c4b-4281-b951-d872f2087c98
fix libgio-2.0 deps in browser_ui
browser_desktop_root_window_host_x11.cc uses g_dbus_proxy_call which
is provided by libgio-2.0, so we should depend on the gio target too.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287981 0039d316-1c4b-4281-b951-d872f2087c98
Initialize the global message center instance to NULL
BUG=Uninitialized global message center instance leads to trouble when
modifying gyps.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287763 0039d316-1c4b-4281-b951-d872f2087c98
Update histogram enums after UseCounter change.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287759 0039d316-1c4b-4281-b951-d872f2087c98
Fix GMOCK warnings in AutofillExternalDelegateUnitTest
Review URL: https://codereview.chromium.org/445573002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287598 0039d316-1c4b-4281-b951-d872f2087c98
leveldatabase.gyp cleanup
Followup for some style issues identified in https://codereview.chromium.org/432083003/

* move windows source files into the main list
  (and filter *_win.{cc,h} on non-windows platforms for all targets)
* remove exclusions of files that don't exist (*_android.cc & *_portable.cc)
* exclude header files corresponding to excluded .cc files


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287374 0039d316-1c4b-4281-b951-d872f2087c98
webrtc deps in remoting should be inside a webrtc condition
If you try to build with enable_webrtc=0 and remoting=1, gyp will fail:
libjingle.gyp:libpeerconnection#target' when processing
remoting.gyp:remoting_host#target.  This happens because the
libpeerconnnection target is defined inside an enable_webrtc==1 condition.
Therefore, these dependencies in remoting.gyp should be too.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287193 0039d316-1c4b-4281-b951-d872f2087c98
fix warning in third_party/leveldatabase/chromium_logger.h
Cast thread_id to uint64 to make sure the PRIu64 printf format works.
Otherwise gcc 4.8 gives an error like so:
warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 11 has type ‘long long unsigned int’ [-Wformat=]

Followup to https://codereview.chromium.org/416633002


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287094 0039d316-1c4b-4281-b951-d872f2087c98
Use the unprefixed Pointer Lock API

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287053 0039d316-1c4b-4281-b951-d872f2087c98
Fix BookmarkNode MetaInfoMap copypasting for Mac
Bookmark node meta info APIs is exposed Chrome to the Bookmark
Manager extension for storing extra meta data for bookmarks.

This API is also used by
//components/enhanced_bookmarks/metadata_accessor.cc to
store/access extra meta data such as associated image URL for
a bookmark.

Without this patch the meta data stored along with the bookmark
will be lost when it has been cut/pasted.

The same functionality works perfectly fine on non-Mac platforms,
here we add the missing implementation for Mac.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287024 0039d316-1c4b-4281-b951-d872f2087c98
fix locales for linux but desktop_linux=0
Fixup after https://codereview.chromium.org/146963007 for non desktop

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287018 0039d316-1c4b-4281-b951-d872f2087c98
dbus: don't add attributes in extern template class specialization
This previous CL added attributes to some template specializations:

This breaks gcc 4.8, which gives the following warning:
  ../../dbus/property.h:412:62: error: type attributes ignored after type is already defined [-Werror=attributes]

Since the template class already has the attribute, I suspect that the
additional attribute specifications are redundant.  ie I think we can
remove them.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@286567 0039d316-1c4b-4281-b951-d872f2087c98
use a gcc version check in 4.9 warning workaround
Only disable the spurious warning on versions of GCC that
need it, so we don't hide real warnings or break older
compilers unnecessarily.

Followup from https://codereview.chromium.org/384843002/


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@286347 0039d316-1c4b-4281-b951-d872f2087c98
Added SERVER_UNAUTHORIZED download interrupt reason.
chrome/app/generated_resources.grd: added messages for
content/browser/download: handling of


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@285359 0039d316-1c4b-4281-b951-d872f2087c98
Removed potential memory leak in PasswordFormManager::OnRequestDone

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@285140 0039d316-1c4b-4281-b951-d872f2087c98
Different SPDY Hpack constant table for startup time and footprint (60KB).
The hpack constant table was 40-60 KB (gcc: 40 KB, clang: 60KB), for 
storing 2 KB of data. Not optimal.

By making it an ordinary static data table we save 60 KB with clang:

Total change: -64153 bytes
  1 added, totalling +2056 bytes across 1 sources
  1 removed, totalling -66215 bytes across 1 sources
  1 grown, for a net change of +14 bytes (367 bytes before, 381 bytes after) across 1 sources
  1 shrunk, for a net change of -8 bytes (10504 bytes before, 10496 bytes after) across 1 sources

and save 40 KB with gcc:

Total change: -41382 bytes
  1 added, totalling +2056 bytes across 1 sources
  2 removed, totalling -43597 bytes across 2 sources
  1 grown, for a net change of +167 bytes (341 bytes before, 508 bytes after) across 1 sources
  1 shrunk, for a net change of -8 bytes (10576 bytes before, 10568 bytes after) across 1 sources


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@284698 0039d316-1c4b-4281-b951-d872f2087c98
Include a pak file in the binary_size output if requested.
By adding --pak out/Release/content_shell.pak at the command line
the contents of it will be added to the visual output.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@284440 0039d316-1c4b-4281-b951-d872f2087c98
Save some gcc footprint (15 KB) in ExplodedFrameState.
Inlining the assignment and copy constructor for a class
like ExplodedFrameState exploded the machine code in stl::vector.

Total change: -14969 bytes
  2 added, totalling +504 bytes across 1 sources
  1 removed, totalling -3387 bytes across 1 sources
  0 added, totalling 0 bytes across 0 sources
  3 shrunk, for a net change of -12086 bytes (14716 bytes before, 2630 bytes after) across 2 sources

It also helps for clang which normally ignores programmers hints to inline anyway:
Total change: -918 bytes
  1 added, totalling +263 bytes across 1 sources
  3 removed, totalling -1098 bytes across 2 sources
  2 grown, for a net change of +161 bytes (1822 bytes before, 1983 bytes after) across 1 sources
  1 shrunk, for a net change of -244 bytes (1401 bytes before, 1157 bytes after) across 1 sources


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@284424 0039d316-1c4b-4281-b951-d872f2087c98
Added IsConstructorCall to gin::Arguments.
It simply forwards the flag from v8::FunctionCallbackInfo and allows
the function handler that accept gin::Arguments argument to distinguish
between normal function invocation and call as an object construction.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@284123 0039d316-1c4b-4281-b951-d872f2087c98
Avoid merging chrome_browser_desktop_linux_sources lists
chrome_browser_desktop_linux_sources variable is defined in both
chrome_browser.gypi and chrome_browser_ui.gypi. If we keep the same
name the lists will be merged in gyp builds, resulting the same list
compiling twice for both browser and browser_ui targets.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@284044 0039d316-1c4b-4281-b951-d872f2087c98
Allow building search_engines component with configuration_policy==0
Review URL: https://codereview.chromium.org/396303002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@284009 0039d316-1c4b-4281-b951-d872f2087c98
Fix GMOCK warnings in PasswordManagerTest
Review URL: https://codereview.chromium.org/390393002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@283933 0039d316-1c4b-4281-b951-d872f2087c98
Make ObserverList non-inline to save 90KB with gcc
With gcc, ObserverList expands to 6-700 bytes every time it is 
iterated. By not trying to force OberservListBase to be inline
that shrinks some. clang already ignores the hints to inline 
the code and actually doesn't change a single bit in the generated
program with this change.

raw data:
Total change: -90875 bytes
  262 added, totalling +39188 bytes across 2 sources
  49 removed, totalling -27573 bytes across 16 sources
  23 grown, for a net change of +3600 bytes (34968 bytes before, 38568 bytes after) across 8 sources
  228 shrunk, for a net change of -106090 bytes (239819 bytes before, 133729 bytes after) across 53 sources

The additions is about 2-300 different flavours of ObserverListBase, 100-300 bytes each.

The savings are 200-600 bytes each every time an observer list is used. For example:

-870: content::RenderFrameImpl::didFailLoad(blink::WebLocalFrame*, blink::WebURLError const&) type=t, (was 1635 bytes, 
now 765 bytes)
-895: content::RenderFrameImpl::didFinishLoad(blink::WebLocalFrame*) type=t, (was 1646 bytes, now 751 bytes)
-583: content::WebContentsImpl::DidFailProvisionalLoadWithError(content::RenderFrameHostImpl*, FrameHostMsg_DidFailProvisionalLoadWithError_Params const&) type=t, (was 768 bytes, now 185 bytes)
-611: content::WebContentsImpl::DidStartProvisionalLoad(content::RenderFrameHostImpl*, GURL const&, bool, bool) type=t, (was 895 bytes, now 284 bytes)


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@283762 0039d316-1c4b-4281-b951-d872f2087c98
Fix header inclusion of chrome_template_url_service_client.cc
chrome_template_url_service_client.cc should include
chrome/browser/history/history_notifications.h as it's using
history::URLVisitedDetails declared there.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@283747 0039d316-1c4b-4281-b951-d872f2087c98
Polishing binary_size tool output.
Doing some sorting and splitting of data to make large amounts
of changes easier to study.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@283540 0039d316-1c4b-4281-b951-d872f2087c98
fix narrowing conversion warning in SpdyFramerTest.CreatePriority
Avoid narrowing conversion warnings by not trying to put 
a char in an unsigned char array.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@283352 0039d316-1c4b-4281-b951-d872f2087c98
add double support to base::Pickle
Since WebTimeRange now uses doubles instead of floats[1], we should
probably add double support to base::Pickle.

[1] https://codereview.chromium.org/337923006


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@283064 0039d316-1c4b-4281-b951-d872f2087c98
Add support for clearing the HTTP auth cache.
This patch adds an API so that the platform can clear the HTTP auth cache
at will. This can be useful when clearing private browsing data to prevent
cached credentials from being re-used.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@282944 0039d316-1c4b-4281-b951-d872f2087c98
Support ignorance of base class finalizers.
When checking if a class needs a finalizer, allow some of its base
classes to be ignored, even if they do have a declared destructor.

This is done so as to handle WebCore::ScriptWrappable use better while
in transition. i.e., WebCore::ScriptWrappable's destructor does not
have to be invoked when sweeping, and when Oilpan will be on by
default, ScriptWrappable will not define one. However, until that
time, it still provides a user-defined destructor, and to allow the
class to be used as base in conjunction with GarbageCollected<>, we
will now look past it when checking the finalizer requirement.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@281758 0039d316-1c4b-4281-b951-d872f2087c98
simplify posix MappedFile::Init and add useful logs
This ancient CL suggested a simplication in mapped_file_posix.cc:

After hitting this DCHECK on an embedded device where using a debugger
is difficult, I decided to make the suggested change and add some useful
logging while I was at it.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@281747 0039d316-1c4b-4281-b951-d872f2087c98
Fix component build linking with notifications=0
We will get the following errors if not:

2>     Creating library ..\..\build\Debug\lib\message_center.lib and object ..\..\build\Debug\lib\message_center.exp
2>dummy_message_center.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall message_center::NotificationDelegate::HasClickedListener(void)" (?HasClickedListener@NotificationDelegate@message_center@@UAE_NXZ)
2>dummy_message_center.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall message_center::NotificationDelegate::ButtonClick(int)" (?ButtonClick@NotificationDelegate@message_center@@UAEXH@Z)

Same fix for OS==android.

Done by Przemek Kudla <pkudla@opera.com>

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@281574 0039d316-1c4b-4281-b951-d872f2087c98
Add some Blink JS/CSS data resources
This makes the resources added in
available through blink::Platform::loadResource().


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@281534 0039d316-1c4b-4281-b951-d872f2087c98
Fix linking error in message_center
Fixup to 3e28d46ea1840c9d4dc451271dd7e6d3b510fc50
message_center now depends on aura even if 'use_ash=0'.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@281516 0039d316-1c4b-4281-b951-d872f2087c98
gcc 4.7 workaround for __uint16_t
It seems that with my gcc 4.7 / eglibc 2.11 toolchain, sys/user.h uses
__uint16_t without it necessarily being defined first.  This can be
worked around by simply including sys/types.h first.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@281504 0039d316-1c4b-4281-b951-d872f2087c98
Fix Mac bootstrap sandbox for 64-bit builds
Mach look_up2 message structs should be aligned by 4 bytes like
breakpad does, otherwise there will be a 192 bytes vs. 188 bytes
difference for look_up2_request_10_7 when compiling in 64-bit.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@281313 0039d316-1c4b-4281-b951-d872f2087c98
Increase storage for Java exception information.
Nested exceptions have multiple stack traces with the most important one at the end.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@280793 0039d316-1c4b-4281-b951-d872f2087c98
binary_size_tool: fix for ambiguous addr2line output
Sometimes the output of addr2line is ambiguous, example:
and does not include the absolute path of the source file. This fix
is mostly a port of andrewhaydens solution to disambiguate the path.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@280303 0039d316-1c4b-4281-b951-d872f2087c98
stub out debug::StackTrace().Print() when using uclibc
This is a followup from https://codereview.chromium.org/228753003 which expands the subset of chromium that should be possible to build with uClibc.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@280289 0039d316-1c4b-4281-b951-d872f2087c98
socket_dispatcher_host.h uses webrtc, skip when webrtc is disabled
https://codereview.chromium.org/264793017 added some webrtc specific
code to socket_dispatcher_host.h, and it only appears to be used for
webrtc as far as I can see.  So we should only include this file
elsewhere when webrtc is enabled.

TEST=build with enable_webrtc=0

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@279857 0039d316-1c4b-4281-b951-d872f2087c98
Fix creating platform font on Windows
fdwCharSet param changed from 0 to DEFAULT_CHARSET (which is defined to
1). ScriptShape fails to generate glyphs on Windows XP for some complex
scripts (Hindi text for instance) if font is created with fdwCharSet=0.

Other paramaters are unchanged because they still expand to 0.


TEST=On Windows XP, go to Control Panel and Regional and
Language Options. Under Languages tab check Install files
for Complex Script and right-to-left languages (including
Thai) and Install files for East Asian languages. Click
Details and install Hindi language. Launch Chromium. Go to
advanced settings and go to Languages. Add Hindi language
and click Display Chromium in this language button. Restart
Chromium. Expected result: Hindi font glyphs should be
properly generated for all UI elements (tabs, menus,
notification panels).

Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=263001

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@279719 0039d316-1c4b-4281-b951-d872f2087c98
PlatformFontWin::DeriveFontWithHeight insensitive to base font's height
As a side effect this commit fixes also bug 149151 and allows https://codereview.chromium.org/230793003/ patch to be applied without breaking tests.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@279657 0039d316-1c4b-4281-b951-d872f2087c98
binary_size: Easier-to-read output
It's easy to have to have to click a few levels down (in my case down
into / -> home -> bratell -> src -> chromium -> src). Remove the part
that seems to be an unnecessary prefix by assuming that everything
above cwd is not interesting.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@279448 0039d316-1c4b-4281-b951-d872f2087c98
IDL parser: implement Stringifier production
Emit a node with class 'Stringifier' for all stringifier variants.
If the stringifier is an attribute, this node has a child node that
represents the attribute. If the stringifier is an operation (named
or unnamed) the node has a child node that represents the operation.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@279097 0039d316-1c4b-4281-b951-d872f2087c98
New ZipReader::ExtractCurrentEntryToString API.
New API which extract a zip entry into a memory buffer.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@278766 0039d316-1c4b-4281-b951-d872f2087c98
IDL parser: align with current Web IDL specification
Mostly renumbered and restructured grammar productions.  Notable changes:

- add support for static attributes via StaticMember
- add support for built-in types ByteString and RegExp
- allow trailing comma in enum declarations

Depends on:
IDL parser: drop AttributeOrOperation and StaticAttribute overrides
...or else breaks Blink compile.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@278365 0039d316-1c4b-4281-b951-d872f2087c98
IDL parser: add StaticAttribute production
This is a straight upstream from Blink's IDL parser, which will allow
us to drop some overrides there, which in turn will allow us to update
this parser to use the grammar of current Web IDL, where static
attributes are supported differently (via a StaticMember production
that handles both static attributes and static methods.)

Preparation for:
IDL parser: drop AttributeOrOperation and StaticAttribute overrides
https://codereview.chromium.org/336733002/ (in Blink)

...and ultimately for:
IDL parser: align with current Web IDL specification


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@277843 0039d316-1c4b-4281-b951-d872f2087c98
Build content with OS X 10.9 SDK
glFlush() in render_widget_host_view_mac.mm requires gl.h since
10.9 SDK (I suppose it was included implicitly before).

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@277817 0039d316-1c4b-4281-b951-d872f2087c98
dmprof: Fix gpu matchers in android.browser policy

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@277417 0039d316-1c4b-4281-b951-d872f2087c98
CHR-1796: Implement UIATextProvider::get_Value method.
On Windows 8 LDTP gettextvalue function uses
IRawElementProviderSimple::GetPatternProvider for UIA_ValuePatternId and
method IValueProvider::get_Value which is not implemented instead of


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@277416 0039d316-1c4b-4281-b951-d872f2087c98
NSSDecryptor::ReadAndParseSignons() - improved password form scheme detection,
when database row has non-empty realm, assume autofill::PasswordForm::SCHEME_BASIC.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@277393 0039d316-1c4b-4281-b951-d872f2087c98
Aura tooltips do not move on mouse move in case of many neighboring
views with the same tooltip label

BUG=Aura tooltips do not move on mouse move in case of many neighboring
views with the same tooltip label. This can be really uncomfortable
when working with lots of tabs with the same address on the
tab strip. Try creating ~30 startpage tabs and hover over one of them,
then move the cursor to others. The tooltip will just sit in the place
where it was first shown.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@277010 0039d316-1c4b-4281-b951-d872f2087c98
Add mime type information to the download database

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@276775 0039d316-1c4b-4281-b951-d872f2087c98
Compile fix for OpenSSL on Mac and Windows.
OSCertHandle is not defined to OpenSSL's X509
on Mac/Windows.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@276678 0039d316-1c4b-4281-b951-d872f2087c98
binary_size: Avoid creating nodes with many thousand children.
If a bucket has too many thousand children the webapp (graph lib?)
hangs. Protect against the most common case by splitting up the
(No Path) section in chunks of 3000 symbols.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@276650 0039d316-1c4b-4281-b951-d872f2087c98
Recent update to Windows 8.1 added new default High DPI mode - 250% for qHD displays.
This is initial work package to reflect this change, making it possible to add hi-resolution resources in the future (if needed).

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@276551 0039d316-1c4b-4281-b951-d872f2087c98
binary_size: Fix jobs number parsing

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@276164 0039d316-1c4b-4281-b951-d872f2087c98
binary_size: Check debug data format before starting.
If the debug data format is DWARF4 and binutils is not new enough
the output will be more or less useless (no files will be detected).
Detect that case early instead of having the user wait for many hours
for something that can't be used.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@275866 0039d316-1c4b-4281-b951-d872f2087c98
gyp performance: Load detect_host_arch directly.
We ran "python detect_host_arch.py" ~15 times from gyp. Run
detect_host_arch.py directly from from within gyp for faster execution
and since the path is no longer part of the command, the result will
also be cached more often.

The total gain is at best 0.3 seconds. For most people it will be less.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@275361 0039d316-1c4b-4281-b951-d872f2087c98
elf_symbolizer: Use a process for max 4000 lookups and then restart
addr2line processes keep growing as they are used so it's best to
restart them every now and then to avoid making its internal caches
so large that the computer runs out of RAM or the program becomes
incredibly slow.

I experimented with different counts. 10000 uses 50% more memory
than 4000 for a marginal performance increase. 1000 uses a bit
less memory but will be 10% slower. 3-4000 seems to be the sweat


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@275165 0039d316-1c4b-4281-b951-d872f2087c98
Emit partial results if binary_size is interrupted.
Instead of just throwing away everything if the user presses
Ctrl-c, write down whatever data we have to the disk. By asking for
the largest symbols first, it's sometimes possible to get a quite
good picture after only 10-15% of the total runtime.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@275053 0039d316-1c4b-4281-b951-d872f2087c98
Pass AutocompleteProvider::kMaxMatches to InMemoryURLIndex
The only client of InMemoryURLIndex::HistoryItemsForTerms is
//chrome/browser/autocomplete/history_quick_provider.cc which has access
to the constant. So pass the constant to the history component instead
of having the dependency.

TBR=thakis  // For OWNERS at chrome/browser/autocomplete/history_quick_provider.cc

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@273072 0039d316-1c4b-4281-b951-d872f2087c98
Disable multisampling on Mali-400 GPUs and Android < 4.3
This avoids a GL error from a buggy glGetIntegerv(GL_MAX_SAMPLES_ANGLE)
call. Based on patch by mkisilev@yandex-team.ru


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@272874 0039d316-1c4b-4281-b951-d872f2087c98
Added PRESUBMIT.py for binary_size tools.
Make the tests run for every commit to make sure tests and code
stay in sync and are both working.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@272496 0039d316-1c4b-4281-b951-d872f2087c98
Graphical version of the run_binary_size_analysis tool.
The binary_size tool suit includes tools that are useful when trying
to reduce binary size of a program, and chromium related programs
in particular.

This commit (mostly written by andrewhayden@chromium.org for 
Android but ported to generic Linux by bratell@opera.com) adds 
a graphical HTML based output for run_binary_size_analysis.py.
In the generated web page it is possible to dynamically and 
graphically browse the binary and each part of the source tree 
is given a size that reflects its contribution to the binary size.

The run_binary_size_analysis tool is run on compiled binaries 
with symbols and uses nm and addr2line to map parts of the
binary to source code. Since addr2line is slow the operation to map 
binary symbols to source files takes a while but the output is 
well worth it when shrinking programs. See its usage information
for details about how to run it.

This commit also includes the tool explain_binary_size_delta.py 
(textual output) which can be used to understand why a binary 
changed size and in what way. See its usage information for 
details about how to run it.

There are many further improvements possible to to do on these tools.
Search the bug database for Label:Tools-BinarySize for suggestions.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@272255 0039d316-1c4b-4281-b951-d872f2087c98
Fixed positioning of tooltips in multi monitor setups.
If window is positioned on right monitor in multimonitor setup
tooltips for items to the left of Chromium window appear on left screen.
This is because screen on which to display the tooltip is calculated from
DIP coordinates.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@272218 0039d316-1c4b-4281-b951-d872f2087c98
Move favicon callbacks to favicon_base
Move FaviconImageCallback, FaviconResultsCallback and FaviconRawCallback
to favicon_base, those types are shared between favicon and history
components (methods are declared in FaviconService, but it delegates the
work to HistoryService) and only uses types from base:: and
favicon_base:: namespaces.

Also BookmarkClient::FaviconImageCallback is a copy of
FaviconService::FaviconImageCallback, replace it with favicon_base::

TBR=thakis for //chrome outside of //chrome/browser/history,

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@272065 0039d316-1c4b-4281-b951-d872f2087c98
treat all whitespace as a delimiter in GYP_DEFINES
gyp itself treats any whitespace as a delimiter in GYP_DEFINES, this script should behave the same.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271851 0039d316-1c4b-4281-b951-d872f2087c98
gpu: Assert that FencedAllocator is empty in destructor
With the commit "gpu: Reuse transfer buffers more aggresively" mapped
memory is free:ed on lost context. This means that we can reinstate the
DCHECKs in the FencedAllocator destructor that checks that all blocks
have been free:ed by their owner.

Tests that didn't explicitly free mapped memory now do so, and one test
that tested that leaking was OK has been removed.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270991 0039d316-1c4b-4281-b951-d872f2087c98
Move channel id tests up from OpenSSL and update channelid version.
NSS (and soon OpenSSL) runs the new ChannelID version 30032. This patch
moves the simple ChannelID tests from OpenSSL unittests to the general
ssl_client_socket_unittest.cc and updates the channelid version in
TLS Lite.

TLS Lite is not updated with ChannelId resumption support since
ChannelID signature checking is not yet implemented in TLS Lite.

ChannelID Signature checks, along with ChannelId resumption support
and  ChannelID resumption tests should be implemented in further work.

This CL will also roll third_party/openssl:

OpenSSL: rolls DEPS 267648->269063 

Takes in following change:

r269063 | haavardm@opera.com | 2014-05-08 17:48:32 +0200 (to., 08 mai 2014) | 8 lines

New tls channel id version for OpenSSL

New tls channel id version extracted from patch 0015-channelid.patch attached to http://crbug.com/366961.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270683 0039d316-1c4b-4281-b951-d872f2087c98
Fix policy_component shared_library link without configuration_policy
It should depend on url_matcher as url_blacklist_manager uses it.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270410 0039d316-1c4b-4281-b951-d872f2087c98
Fix ui_unittests building with enable_autofill_dialog=0
Review URL: https://codereview.chromium.org/178193032

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@270107 0039d316-1c4b-4281-b951-d872f2087c98
Fix GMOCK warnings in password_manager
In password_manager_unittests and password_form_manager_unittests.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269939 0039d316-1c4b-4281-b951-d872f2087c98
Missing OS guard before including android header.
An Android header was unconditionally included. It works as long as the
header doesn't use any Android specific code but it's doomed to
break something eventually.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269430 0039d316-1c4b-4281-b951-d872f2087c98
Ensure that _GNU_SOURCE is defined early enough
This style cleanup broke some versions of glibc that include fcntl.h from
another header before it is explicitly included:

We need _GNU_SOURCE defined before the first time fcntl.h is included since
we use the linux-specific O_DIRECTORY extension.

Thanks to johan_e@opera.com for helping track this down.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269419 0039d316-1c4b-4281-b951-d872f2087c98
Create copy of context record before passing it to StackWalk64
StackWalk64 may modify EXCEPTION_POINTERS struct that is passed
to it from constructor of StackTrace.
In the case of StackDumpExceptionFilter the struct that is passed
to constructor of StackTrace may be later passed to other (chained)
exception filter(s), so it shouldn't be modified.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269296 0039d316-1c4b-4281-b951-d872f2087c98
Fixed uncompressing files with wrong uncompressed size set.
A zip file carries some metadata for each archived file, including the total
uncompressed size. If that size was incorrect, therefore the compressed file
being different in size when unpacking, the minizip code would fail with a
CRC error. Every other zip utility handles these files, so should the minizip
code for safety sake.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268940 0039d316-1c4b-4281-b951-d872f2087c98
Fix link error when building component build on OS X with OpenSSL.
Don't build base/keygen_handler_openssl.cc when using
OpenSSL while leaving certificate handling to the OS. Keygen handler
will in these cases be implemented in OS specific code.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268808 0039d316-1c4b-4281-b951-d872f2087c98
Don't add -fuse-ld=gold to cflags
Don't add -fuse-ld=gold to cflags, since gyp emits ninja files that
compile with -c, which means the linker is not used, making the flag

Removing ignored options makes the compiler commands (slightly)
easier to read, and can avoid some errors in mismatched icecc setups.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268377 0039d316-1c4b-4281-b951-d872f2087c98
Move internal zip code from zip.cc to zip_internal.cc
Also added missing <vector> told by the linter, fixed leak of a zipFile
in ZipWithFilterCallback in case of error, and corrected error in function name.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267815 0039d316-1c4b-4281-b951-d872f2087c98
Fix for scoring password autofill candidates:
PasswordFormManager::ScoreResult() - added signon realm matching. This fixes
a following situation: we have passwords saved in login db for 2 websites:
"https://service1.somedomain.com/path1" and "https://service2.somedomain.com/path2",
using the same username "someusername". We display login form on
"https://service1.somedomain.com/path3" and we receive password autofill
suggestion for "https://service2.somedomain.com/path2".


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267659 0039d316-1c4b-4281-b951-d872f2087c98
add a linux_use_debug_fission gyp variable for -gsplit-dwarf
Since -gsplit-dwarf breaks some extremely useful build tools (eg ccache and icecc), it deserves its own gyp variable.  This setting replaces the previous hack, setting binutils_version=0.

ccache: https://bugzilla.samba.org/show_bug.cgi?id=10005
icecc: https://github.com/icecc/icecream/issues/86


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267381 0039d316-1c4b-4281-b951-d872f2087c98
Dragging shouldn't block interstitial page.
Interstitial page should send DragMsg_SourceSystemDragEnded message
even if it is not supporting dragging. For similar issue see

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@267237 0039d316-1c4b-4281-b951-d872f2087c98
Enable the mediaControlsOverlayPlayButtonEnabled setting on Android

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266800 0039d316-1c4b-4281-b951-d872f2087c98
Revert LOGs inadvertently added in r265615.
Review URL: https://codereview.chromium.org/256593006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266539 0039d316-1c4b-4281-b951-d872f2087c98
Fixed routing id in WebPluginProxy::CheckIfRunInsecureContent.
Wrong routing id in this function may cause a hang on some web-pages (process will wait for a response after sending a message which never gets delivered).

Message PluginHostMsg_CheckIfRunInsecureContent is handled in WebPluginDelegateProxy::OnMessageReceived, so instead of host_render_view_routing_id_, route_id_ should be used (just like in WebPluginProxy::URLRedirectResponse).

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265913 0039d316-1c4b-4281-b951-d872f2087c98
Added a public function to cancel any fling gestures

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265808 0039d316-1c4b-4281-b951-d872f2087c98
Create CrxInstaller directly in WebstoreInstaller
The WebstoreInstaller needs a way to keep track of extensions being
downloaded and installed. The installation is handled by CrxInstaller
but when it used to be created automatically by the
ChromeDownloadManagerDelegate, the WebstoreInstaller had little control
over it and needed the CrxInstaller to keep the original_download_url as
sort of an identifier.

With this change the WebstoreInstaller creates the CrxInstaller itself
and keeps a pointer to it so there is no more need for

This is also more robust because URLs are not unique identifiers (there
could be two installations run simultaneously for one download URL which
would have led to a crash in the old code).


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265615 0039d316-1c4b-4281-b951-d872f2087c98
Fix link error when compiling with OpenSSL while using OS certs.
Turn off OpenSSL client auth tests when use_openssl_certs==0.

OS client certifiates other than OpenSSL's struct x509 are not
yet supported for the OpenSSL integration.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265610 0039d316-1c4b-4281-b951-d872f2087c98
Fix client certificate regressions on Android < 4.2
https://codereview.chromium.org/166143002 refactored the code to use the
AndroidPrivateKey wrapper class rather than Java's PrivateKey directly,
but this one line of code was not updated.  As a result, the test will
always fail and client certificates won't work on Android versions prior
to 4.2 (this is a compatibility code path, which is probably why it
wasn't caught in testing or review).

In addition, while https://codereview.chromium.org/182933002 updated the
code to to fix 64-bit compilation issues, it missed the point that this
is compatibility code meant to run only on earlier versions of Android
that aren't 64-bit safe to begin with. As a result, a method called via
reflection will return an unexpected integer instead of a long, causing
the code to fail (even in 32-bit mode).

Fix by conservatively casting the return value through Number instead,
which will work with both int and long. (The earlier Android versions
that this code is targeting are still not 64-bit safe, but the
compatibility code should not cause any compile issues.)

Investigation credit goes out to kimn@opera.com.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265531 0039d316-1c4b-4281-b951-d872f2087c98
disable more stacktrace usage in debug uclibc builds
Here are a couple more instances of OutputToStream / Print that are
no longer available in uClibc builds.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@264887 0039d316-1c4b-4281-b951-d872f2087c98
Limit extension autoupdates timer maximum scheduled delay.
Extension autoupdate will be triggered at maximum delay of
update frequency from startup. Stored next update check will
be used only if it is reasonably far into future. This will prevent
users from virtually disabling extensions autoupdate by changing system time.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@264771 0039d316-1c4b-4281-b951-d872f2087c98
gpu: Remove left-over empty class declaration
ScopedSafeSharedMemory was removed in "GPU: Remove memory duplication in
async uploads." so lets remove this empty declaration as well.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@264469 0039d316-1c4b-4281-b951-d872f2087c98
gyp performance: don't invoke python to check dir existance
We spend a few tenths of a second every gyp invocation starting
the dir_exists.py program. Seems a bit unnecessary.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@264316 0039d316-1c4b-4281-b951-d872f2087c98
gyp performance: Add a DoMain version of build/compiler_version
No need to start a full python interpreter for compiler_version.py. This saves about 0.6 CPU seconds.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@264303 0039d316-1c4b-4281-b951-d872f2087c98
Add a call to hide the popup when the render process dies.
Prevent persistent popups after the render process has died, also resetting
scroll accounting and gesture detection.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@263613 0039d316-1c4b-4281-b951-d872f2087c98
Chromeos and non-X11 unix builds should not hit NOTREACHED when pasting.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@263420 0039d316-1c4b-4281-b951-d872f2087c98
make it possible to set use_system_harfbuzz from outside
harfbuzz.gyp overrides any user-specified value for use_system_harfbuzz.
Ideally, it should only override this value for official builds.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@263399 0039d316-1c4b-4281-b951-d872f2087c98
Fix creating platform font on Windows
fdwCharSet param changed from 0 to DEFAULT_CHARSET (which is defined to
1). ScriptShape fails to generate glyphs on Windows XP for some complex
scripts (Hindi text for instance) if font is created with fdwCharSet=0.

Other paramaters are unchanged because they still expand to 0.


TEST=On Windows XP, go to Control Panel and Regional and
Language Options. Under Languages tab check Install files
for Complex Script and right-to-left languages (including
Thai) and Install files for East Asian languages. Click
Details and install Hindi language. Launch Chromium. Go to
advanced settings and go to Languages. Add Hindi language
and click Display Chromium in this language button. Restart
Chromium. Expected result: Hindi font glyphs should be
properly generated for all UI elements (tabs, menus,
notification panels).

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@263001 0039d316-1c4b-4281-b951-d872f2087c98
Added HTTP response code field to ResourceRequestDetails.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@262987 0039d316-1c4b-4281-b951-d872f2087c98
disable stack trace unittests for uClibc builds
Since we disabled StackTrace::OutputToStream and StackTrace::Print
for uClibc builds, we should disable the related unittests for uClibc


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@262984 0039d316-1c4b-4281-b951-d872f2087c98
don't use glibc-specific execinfo.h on uclibc builds
The execinfo.h header is glibc-specific, as is the backtrace function.
Let's skip them for uclibc builds.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@262841 0039d316-1c4b-4281-b951-d872f2087c98
WebContents could be blocked after pending cross-site navigation is canceled.
It happens when navigation is canceled just before RenderFrameHost::OnNavigate
by second one. Current renderer is swapped-out but not entirely (after
ViewHostMsg_SwapOut_ACK but before ViewMsg_WasSwappedOut). This causes that
second navigation and all following are blocked, current renderer process is
not closed but can't respond to input events because it is swapped-out.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@262501 0039d316-1c4b-4281-b951-d872f2087c98
don't use glibc-specific execinfo.h on uclibc builds
The execinfo.h header is glibc-specific, as is the backtrace function.
Let's skip them for uclibc builds.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@262344 0039d316-1c4b-4281-b951-d872f2087c98
define LIBC_GLIBC as 1 for consistency
Most of the other defines in build/build_config.h are set to 1, let's
define LIBC_GLIBC as 1 for consistency.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@262255 0039d316-1c4b-4281-b951-d872f2087c98
Remove unused header zip.h
Review URL: https://codereview.chromium.org/222133002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@261949 0039d316-1c4b-4281-b951-d872f2087c98
Move Preload() code to MappedFile
To heat up the file system caches we load the disk cache index 
into RAM when starting the browser. To make it more obvious
what we're doing, move that to a method named Preload().


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@260844 0039d316-1c4b-4281-b951-d872f2087c98
Stop calling WebSetting::setFullScreenEnabled
The setting has been removed from Blink:


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@260532 0039d316-1c4b-4281-b951-d872f2087c98
gpu: Reuse transfer buffers more aggresively
By keeping track of transfer buffer usage (both sync and async), it is
possible to reuse an existing transfer buffer earlier than it is today.

For synchronous uploads, this is done by inserting tokens marking a
buffer's last usage. If such a token has passed, the buffer can be

For asynchronous uploads, this is done by adding an internal async
upload token to the GLES2Implementation and GLES2CmdDecoderImpl that
enumerates all asynchronous uploads. When an upload is completed, the
token is synchronized with the client which then can free the memory
associated with the async token.

The fenced allocator and mapped memory manager gets a callback that is
used to allow fenced allocator to make the user, in this case
GLES2Implementation, poll the current async upload token and free any
associated memory.


Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=260177

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@260507 0039d316-1c4b-4281-b951-d872f2087c98
Rename pr_error to err_name in the nss log added in r259205.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@260453 0039d316-1c4b-4281-b951-d872f2087c98
Stop using the mediaFullscreenRequiresUserGesture setting
"Make mediaPlayerRequestFullscreen() user gesture bypass explicit"
(Blink r170080) makes the setting redundant.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@260363 0039d316-1c4b-4281-b951-d872f2087c98
Give localserver time to shut down
On machines with slow I/O, the localserver might not shut down immediately,
wait for it if necessary.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@260201 0039d316-1c4b-4281-b951-d872f2087c98
By keeping track of transfer buffer usage (both sync and async), it is
possible to reuse an existing transfer buffer earlier than it is today.

For synchronous uploads, this is done by inserting tokens marking a
buffer's last usage. If such a token has passed, the buffer can be

For asynchronous uploads, this is done by adding an internal async
upload token to the GLES2Implementation and GLES2CmdDecoderImpl that
enumerates all asynchronous uploads. When an upload is completed, the
token is synchronized with the client which then can free the memory
associated with the async token.

The fenced allocator and mapped memory manager gets a callback that is
used to allow fenced allocator to make the user, in this case
GLES2Implementation, poll the current async upload token and free any
associated memory.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@260177 0039d316-1c4b-4281-b951-d872f2087c98
Introduce USE_OPENSSL_CERTS for certificate handling.
See discussion at chromium issue 338885.

When USE_OPENSSL_CERTS is defined, X509::OSCertHandle is now
typedef'ed to struct X509*. 
When USE_OPENSSL is defined, USE_OPENSSL_CERTS will now be
defined for linux and Android, while being off for Mac and 
Windows. This allows OpenSSL to be used while leaving
certificate handling to the OS.
OpenSSL cert verifying code will only be used on Linux.

This patch does not change any default behavior.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@260152 0039d316-1c4b-4281-b951-d872f2087c98
Remove failing CHECK(!delegate_) from SpdyStream::OnDataReceived()
There is a race between SetDelegate() and the PushedStreamReplay() call
it posts a task for, and OnDataReceived() called as more data is
received over the network.  Specifically, if the latter is called after
SetDelegate() is called but before the task it posted has been executed,
the CHECK() fails.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@259800 0039d316-1c4b-4281-b951-d872f2087c98
SSLPolicy::UpdateEntry is returning when it encounters first error.
Because of this, SSLStatus::DISPLAYED_INSECURE_CONTENT should be set before other errors are examined.

This handles the case when not all flags are set if there are some problems with the certificate on the page *and* insecure content is loaded.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@259743 0039d316-1c4b-4281-b951-d872f2087c98
Add missing calls to TestRootCerts::Clear() after usage.
The next unit test that uses TestRootCerts may fail if
TestRootCerts instance is not empty. So every unit test
that uses TestRootCerts needs to clear it at the end.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@259558 0039d316-1c4b-4281-b951-d872f2087c98
cc: Reduce size of cc::ResourceProvider::Resource class
The compositor will at times keep several hundreds instances of this
class when a tab is visible. This patch reduces the size of every
instance by 20 bytes (from 300 bytes to 280 bytes) on 32 bit ARM
compiled with GCC 4.6.

Also adds missing initializers for a field added in


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@259319 0039d316-1c4b-4281-b951-d872f2087c98
update VIDEO_HOLE block wrt recent cc changes

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@259275 0039d316-1c4b-4281-b951-d872f2087c98
Improve logging of NSS errors that do not map to network errors.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@259205 0039d316-1c4b-4281-b951-d872f2087c98
[Win] alt + space opens system menu at wrong position in RTL ui.
When window is not maximized system menu opens on the left hand side and its
contents is partialy outside window bounds. After this fix when system menu
is opened using alt + space with RTL locale we draw it on the right hand side
and whole menu is inside browser window.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@259037 0039d316-1c4b-4281-b951-d872f2087c98
always use -Wno-deprecated-declarations when building sdch
This is also needed for c++11 mode in gcc 4.8, not just clang.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258918 0039d316-1c4b-4281-b951-d872f2087c98
Fix for VS2010 compiler warning.
Including the enum type name between scope and enum is a new invention
and older compilers warn about it being a non standard extension.

It's not needed so let us just drop it.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258531 0039d316-1c4b-4281-b951-d872f2087c98
Do not assume OSCertHandle is OpenSSL's X509 structure.
Instead create a X509Certificate instance from the OpenSSL 
chain via PeerCertificateChain, and compare with the existing


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258337 0039d316-1c4b-4281-b951-d872f2087c98
Remove "bashism" from plain shell script
https://codereview.chromium.org/196413021 uses [[ which isn't present
in all shells, particularly not dash which Debian uses as /bin/sh.
Instead use two simple [ conditions.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258321 0039d316-1c4b-4281-b951-d872f2087c98
Fix for undefined base::FilePath in chrome_extensions_api_client.cc
There was a compilation error when ENABLE_CONFIGURATION_POLICY was not defined.

If ENABLE_CONFIGURATION_POLICY was defined then base/files/file_path.h was
included from


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@258037 0039d316-1c4b-4281-b951-d872f2087c98
Put histogram code in disk_cache on a diet.
The CACHE_UMA macro expanded wildly and with all the static variables
in all blocks it was impossible for the compiler to shrink it. This
removes the static variables (for a minor performance hit) to save 75%
of the size of BackendImpl::ReportStats() and other changes elsewhere.

Examples (sorry, don't have data for symbols smaller than 6 KB so not exact):
disk_cache::BackendImpl::ReportStats()  55423 bytes -> 9788 bytes
disk_cache::BackendImpl::FirstEviction() 21361 bytes -> < 6 KB
disk_cache::BackendImpl::OpenEntryImpl: 16381 bytes -> < 6 KB
disk_cache::EntryImpl::ReportIOTime: 14626 bytes -> < 6 KB
disk_cache::Eviction::ReportListStats: 10099 bytes -> < 6 KB
disk_cache::Eviction::TrimCacheV2: 7820 bytes -> < 6 KB
disk_cache::Eviction::TrimCache: 7095 bytes -> < 6 KB

In total my stripped Linux x64 Release content_shell binary shrinks by 132 KB with this change (0.25%).



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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257637 0039d316-1c4b-4281-b951-d872f2087c98
ensure that UnixDomainSocket::RecvMsgWithFlags doesn't memcpy from 0
If wire_fds is never updated after being initialized to 0, then we should not memcpy from it.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257504 0039d316-1c4b-4281-b951-d872f2087c98
Make SyncStartupTracker::Observer destructor virtual
Instances of SyncStartupTracker::Observer subclasses are likely to be
deleted through a SyncStartupTracker::Observer pointer.

While we are here, also put the include of sync_startup_tracker.h first
in sync_startup_tracker.cc for reasons stated in the style guide.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257502 0039d316-1c4b-4281-b951-d872f2087c98
Make OpenSSL UpdateServerCert() OS independent.
UpdateServerCert currently creates the server cert chain
directly from the openssl struct X509. This works since
OSCertHandle currently is an OpenSSL X509 struct when
OpenSSL is used on Android and Linux.

This patch makes the UpdateServerCert() OS independent by creating
the X509Certificate from DER data instead of OSCertHandle to make
it compile on the other platforms when USE_OPENSSL is off.

Keep the USE_OPENSSL code to avoid converting back and forth
between X509 and DER twice and OsCertHandle is X509.

I see that there is a DER cache in x509_certificate_openssl.cc
which could have simplified the patch a bit. However, if I understand
a comment correctly,  it shouldn't be mixed with certificates that comes
from network, which is the case here. Also, that API is not exposed.

Also remove some unused NSS code from x509_certificate_mac.cc.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257449 0039d316-1c4b-4281-b951-d872f2087c98
Make LogMessage() handle strings with null bytes
'LOG(...) << std::string("a\0a", 3);' would cause the line to be
truncated, and no newline output.

Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=257093

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257135 0039d316-1c4b-4281-b951-d872f2087c98
Make LogMessage() handle strings with null bytes
'LOG(...) << std::string("a\0a", 3);' would cause the line to be
truncated, and no newline output.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257093 0039d316-1c4b-4281-b951-d872f2087c98
Minor documentation fixup, followup from https://codereview.chromium.org/184903003

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257053 0039d316-1c4b-4281-b951-d872f2087c98
Rewriting loop in accessibility code to silence analyzer.
The VS static analyzer thought the code was a mistake by the author
(starting value less than that limit in a decreasing loop)
and judging by the comment, humans also find the loop non-trvial.

So make it more normal.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256086 0039d316-1c4b-4281-b951-d872f2087c98
Add UseCounter values for Prefixed{Window,Worker}URL.
Also add missing entries for HTMLAppletElement,
HTMLMediaElementSeekToFragmentStart, and

Corresponds to https://codereview.chromium.org/186673002/.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@255604 0039d316-1c4b-4281-b951-d872f2087c98
only do linux pvalloc OutOfMemoryDeathTest on non-tcmalloc glibc builds
We only override libc's pvalloc if when using glibc and not tcmalloc
(in base/process/memory_linux.cc), and pvalloc is not always available
on uclibc, so let's use the same ifdef in the unit test.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@254659 0039d316-1c4b-4281-b951-d872f2087c98
Add UseCounter value for SVGClassName.
Also add the missing values for JavascriptExhaustedMemory and

Corresponds to https://codereview.chromium.org/181783002/.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@254482 0039d316-1c4b-4281-b951-d872f2087c98
Remove unused NSS dependencies in mac certificate handling code.
Needed to avoid compile error when compiling for mac with OpenSSL.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@254455 0039d316-1c4b-4281-b951-d872f2087c98
Fix memory leak in components_unittests
This is a trivial fix for a leak that fires on the bots


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253998 0039d316-1c4b-4281-b951-d872f2087c98
Update incomplete credentials in Login Database
Incomplete credentials (missing username_element, password_element
or submit_element) that might get added to the database via importing
from other browsers should now be updated correctly when they're
entered into the right form.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253791 0039d316-1c4b-4281-b951-d872f2087c98
Followup from https://codereview.chromium.org/147513003/
Since linux builds now depend on macros defined in linux/magic.h let's make sure that some of the newer values are set.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@252279 0039d316-1c4b-4281-b951-d872f2087c98
Removing unnecessary creation of RenderViewHostDestructionObserver for all WebContents
ProcessManager creates RenderViewHostDestructionObserver for all WebContents.
It's not necessary as ProcessManager keeps information about WebContents
only related to extensions (extension's background page, extension's popup).


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251765 0039d316-1c4b-4281-b951-d872f2087c98
Autofilling passwords imported from IE more conservative
The trick is to leave action, username_element and password_element
fields of the form empty, this will stop the browser from autofilling
every form on the page with the credentials and will require user
The user will have to click on the input box, select his login from
the drop down and click 'submit'. When this happens, Login Data will
be updated with the action url of the particular form.

Basically, since we don't know which form on the page is the one we 
have imported credentials for, we don't autofill anything until the 
user tells us. We'll remember his choice afterwards.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251035 0039d316-1c4b-4281-b951-d872f2087c98
Changed RefCountedStaticMemory() to accept a void pointer.
Using a void pointer saves lots of redundant casting.

Also added RefCountedMemory front_as<type> which saves typing by not having to
wrap each call with a reinterpret_cast<>.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@250808 0039d316-1c4b-4281-b951-d872f2087c98
base: Don't generate unused BoundFunctorTraits typedef
Having it there causes a warning or error (unused-local-typedefs).


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@249808 0039d316-1c4b-4281-b951-d872f2087c98
Skip root dir when iterating over path in reparse points search.
It turns out that ::GetFileAttributes(...) Windows API for paths in form of "<drive>:" returns attribute of binary file work dir instead of "<drive>:\"


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@249667 0039d316-1c4b-4281-b951-d872f2087c98
Better grouping of data in Deep Memory Profiler
In the linux browser profile, put string data under their
own sections, and teach the system about style and css memory.



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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248996 0039d316-1c4b-4281-b951-d872f2087c98
Make dmprof handle long runs better
Read the dump files one by one as they are processed instead of reading
them all into memory at the start of the program, to reduce peak memory
consumption.  This makes it possible to process larger data sets.

Also restructure a few sub-command implementations to avoid iterating
over the list of dumps more than once and to avoid accessing any given
dump (typically the first) more than once.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248458 0039d316-1c4b-4281-b951-d872f2087c98
Fix fullscreen video race condition.
A newly initialized media player must enter fullscreen if there is a
pending request sent by a previous media player.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247941 0039d316-1c4b-4281-b951-d872f2087c98
Acquire lock in Args::SetSystemVars()
Since the function manipulates Args::declared_arguments_, it needs to
hold the lock to avoid heap corruption.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247710 0039d316-1c4b-4281-b951-d872f2087c98
Aura content shell: make the window shrinkable.
Don't let the initial size (800x600) serve as minimum size.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247306 0039d316-1c4b-4281-b951-d872f2087c98
Disable HTTP authentication dialog for XHR with credentials
According to the XHR[1] and Fetch[2] specifications, a request made with
URL credentials should not trigger the browser's authentication dialog
upon authentication failure, but rather return the 401 response.

[1] http://xhr.spec.whatwg.org/
[2] http://fetch.spec.whatwg.org/


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@247117 0039d316-1c4b-4281-b951-d872f2087c98
Add F5 (reload), back and forward key accelerators to the Aura-based content shell.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@246963 0039d316-1c4b-4281-b951-d872f2087c98
Missing comma in event_utils_win.cc

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@246323 0039d316-1c4b-4281-b951-d872f2087c98
Support relative file paths in FilePathToFileURL().
This makes it possible for content_shell to resolve relative file paths
on the command line and turn them into proper startup URLs.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@246278 0039d316-1c4b-4281-b951-d872f2087c98
Remove implementations of WebMediaPlayer::supportsFullscreen()
WebMediaPlayer::supportsFullscreen() was removed in Blink r165243.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@246127 0039d316-1c4b-4281-b951-d872f2087c98
Fixing Firefox 21+ password import
Firefox 21 changed the directory layout within Firefox.app.
Some libs and content were moved from Firefox.app/Content/MacOS to
Firefox.app/Content/MacOS/browser, and this new location was
read as app_path_ by the importer. However, libnss3.dylib is still
in Firefox.app/Content/MacOS.

Changing utils to set app_path_ based on compatibility.ini's
LastPlatformDir (which always has Firefox.app/Content/MacOS)
instead of LastAppDir (which was changed to

'searchplugins' subdir was moved into the new 'browser' subdir
so search engine importing code has to be adjusted.

Enabling Firefox importer browser tests on Mac. They didn't
work because they attempted to use Windows nss libraries. 
They should have been using Mac-specific libraries which are 
already available for Mac unit tests.

BUG=321112, 48007

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245198 0039d316-1c4b-4281-b951-d872f2087c98
Flash video doesn't play if opened in background tab
This is a regression introduced by 9702820616f52aff8d22dc15e6f25cb86dcc90b2 (bug 299224).

TEST=Go to youtube.com or dailymotion.com. Start playing Flash video. Middle-click one of suggested link to videos to open new tab in background. Activate the tab you've just opened. Expected: Flash video should be playing in active tab. Current: Flash video is not playing until you scroll the page.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@245127 0039d316-1c4b-4281-b951-d872f2087c98
[Aura] Drop to WebContentsView sets wrong drop effect.
Types mismatch causes setting wrong DROPEFFECT (move swapped with copy) on Windows.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244500 0039d316-1c4b-4281-b951-d872f2087c98
gpu: Support parallel active queries in command buffer
Add support for having multiple queries to be active at the same time
given that their targets are different.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@243524 0039d316-1c4b-4281-b951-d872f2087c98
Added a new overload of gfx::Image::CreateFrom1xPNGBytes
... that accepts a RefCountedMemory. This saves some buffer copying in
many places, specially welcome with big images.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@243492 0039d316-1c4b-4281-b951-d872f2087c98
wrap stray switches::kDisableWebRtcHWEncoding in ifdefs
Followup from https://codereview.chromium.org/74563002

TEST=Build with enable_webrtc=0

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242794 0039d316-1c4b-4281-b951-d872f2087c98
remove deprecated armv7 gyp setting now that all uses have been removed

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242428 0039d316-1c4b-4281-b951-d872f2087c98
skip neon code in libwebp when neon is explicitly unavailable
This patch makes it possible to build libwebp without runtime neon detection/usage.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242079 0039d316-1c4b-4281-b951-d872f2087c98
Don't redraw plugin windows on moving when using gpu browser compositor
Plugin windows are redrawn after EndDeferWindowPos call anyway.
Redrawing in SetWindowRgn causes plugin windows to be drawn on browser chrome.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242070 0039d316-1c4b-4281-b951-d872f2087c98
Recognize json media types as (non-image) mime types.
Extend the IsSupportedNonImageMimeType() predicate to also
recognize the JSON media types ("application/<something>+json")
( http://tools.ietf.org/html/rfc6839#section-3.1 )

Note that the 6839 RFC text allows the use of any toplevel type, not just "application/". No known uses outside of application/  however, hence we limit ourselves for now.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@242008 0039d316-1c4b-4281-b951-d872f2087c98
RenderWidgetHostImpl::OnWindowlessPluginDummyWindowCreated() compilation fix on Windows non-Aura

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241839 0039d316-1c4b-4281-b951-d872f2087c98
Fixes duplicate listing of third party libraries in credits
The party license generator can return duplicate paths when a path is both
defined in ADDITIONAL_PATHS and found through the recursive scan. This patch
makes sure an additional path is not reported multiple times if it has
already been found.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241834 0039d316-1c4b-4281-b951-d872f2087c98
Disable three DomSerializerTests in preperation of page serializer merge
This CL fixes my mistake in https://codereview.chromium.org/115163002/ where
I prepended the tests with 'DISABLE_' instead of 'DISABLED_'. It also disables
one additional test that will not work due to the merge.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241545 0039d316-1c4b-4281-b951-d872f2087c98
Preserve modification timestamp when zipping files.
Files packaged in a zip archive now have their last modification date
and time set. When unzipping the files, the output file's last
modification time is also set (if the time in the zip file is not valid,
the output's file time is not set to prevent the original bug causing
files to have dates set to 1980).

Also fixed some cpplint issues.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@241278 0039d316-1c4b-4281-b951-d872f2087c98
update armv6 floating point defaults
Update the armv6 floating point defaults as suggested in


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@240891 0039d316-1c4b-4281-b951-d872f2087c98
Disable two DomSerializerTests in preperation of page serializer merge

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@240671 0039d316-1c4b-4281-b951-d872f2087c98
Add missing argument to Element.setAttribute() calls
"Make arguments to Element methods non-optional" was
reverted in Blink because these tests began failing.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@239999 0039d316-1c4b-4281-b951-d872f2087c98
Roll Breakpad r1240:r1247.
r1247: Back out r1244
r1246: switch armv7 setting to arm_version==7 in breakpad
r1245: Add include guards and avoid redefinition of false/true in convert_UTF.
r1244: Avoid redefinition of global static debug flag and remove unneeded #import "GTMDefines.h
r1243: Do not read CFI section when not outputing CFI information.
r1242: Fix unused method warning.
r1241: Fixing several instances of wrong printf format specifiers.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@239555 0039d316-1c4b-4281-b951-d872f2087c98
Followup for bug when zipping a folder with non-ascii chars in its name.
The commit adds a unit test and replaces the substr with the more
stylistically adequate FilePath::AppendRelativePath.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@239474 0039d316-1c4b-4281-b951-d872f2087c98
Remove IO allowed assert in GetTempDir()
GetTempDir() does not do file IO, therefore it can be used from other threads
to create file paths. No other platform implementation has that assert.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@239428 0039d316-1c4b-4281-b951-d872f2087c98
Zip utf-8 file names with encoding bit set.
This commit sets the 'locale' bit in global directory of a zip which
means that the file name was written in UTF-8. Chromium always writes
and reads zips as UTF-8 so it is not a problem per se but other, more
zip compliant, programs see packed files with wrong paths if this bit
is not set.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@239216 0039d316-1c4b-4281-b951-d872f2087c98
OpenMAX requires armv7 or greater

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@239214 0039d316-1c4b-4281-b951-d872f2087c98
Stack at top functionality for Aura-based windows
Implementation of previously empty DesktopNativeWidgetAura::StackAtTop()


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@238978 0039d316-1c4b-4281-b951-d872f2087c98
remove arm_version==5 configuration, since it's no longer supported
Since armv5 builds are no longer supported (due to being dropped by V8),
let's remove a stray arm_version==5 section from the build configration.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@238725 0039d316-1c4b-4281-b951-d872f2087c98
Roll libjpeg_turbo DEPS to r238478
Update libjpeg_turbo to get this CL:


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@238662 0039d316-1c4b-4281-b951-d872f2087c98
TODO: remove armv7 setting
Leave a TODO note in build/common.gypi to remove this obsolete armv7
setting, once all uses of it are removed.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@238643 0039d316-1c4b-4281-b951-d872f2087c98
Fix typeahead for popup menu with attributes
Popup menu item with attributes (<optgroup> for instance) will
break typeahead matching support on Mac. Use the same trick Apple
uses in WebKit2 [1] to fix this.


[1] http://trac.webkit.org/browser/trunk/Source/WebKit2/UIProcess/mac/WebPopupMenuProxyMac.mm#L90

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@238377 0039d316-1c4b-4281-b951-d872f2087c98
DPCHECK known conditions when we guess false in CurrentProcessHasOpenDirectories
openat(AT_FDCWD, "/proc/self/fd", ...) can fail if we have been chrooted
(eg into /proc/self/fdinfo) without directory listing permissions on the
new root dir (hence EACCES).  And even if we did have this permission,
/proc wouldn't exist (hence ENOENT).

TEST=Make a debug build or a release build with dcheck_always_on=1 and verify that this DPCHECK does not fail.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@237766 0039d316-1c4b-4281-b951-d872f2087c98
fix "may be used uninitialized" warnings for older compilers
This small change keeps some slightly older compilers happy (gcc 4.5).

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@236769 0039d316-1c4b-4281-b951-d872f2087c98
Added RefCountedMallocedMemory
Which takes ownership over a chunk of memory allocated with malloc or calloc
and must then be freed using free().

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@236675 0039d316-1c4b-4281-b951-d872f2087c98
Make it possible to disable udev in the content API on linux
This is useful for embedded linux setups, which often don't include udev support.

TEST=Build content_shell on linux with use_udev=0 then run ldd on output binaries to verify libudev is not listed (and is listed if built with use_udev=1 or unspecified)


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@236204 0039d316-1c4b-4281-b951-d872f2087c98
Do not issue preflight for crossorigin media resource loads.
Turn off preflighting when issuing requests that are CORS enabled
fetches. The requests do not have any author headers, hence should go
ahead without a preflighting step. CORS-enabled servers sometimes
depend on this.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@235958 0039d316-1c4b-4281-b951-d872f2087c98
Rewrite include paths for Blink public/ headers that have moved
This is a prerequisite for removing the old (redirected) headers.

In a few DEPS and in webview_plugin.cc the include was redundant and
just removed instead.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@235116 0039d316-1c4b-4281-b951-d872f2087c98
Remove unused implementations in WebInbandTextTrackImpl
These functions have been removed from WebInbandTextTrack.

BUG=315257, 315270, 315476

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@233835 0039d316-1c4b-4281-b951-d872f2087c98
Enable ActivityLogApiTest.TriggerEvent and update test
Blink rev has been rolled to r161048, which includes the innerHTML
move from HTMLElement to Element. Update and enable the test that had
to be disabled during the transition.


Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=232385

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@233586 0039d316-1c4b-4281-b951-d872f2087c98
cc: Keep track of busy resources in ResourcePool
Instead of assuming every released resource could be potentially
reusable, manage a list of busy resources and a list of immediately
reusable resources. A busy resource is one which can not be locked for
Recheck busy resources before the tile manager is to schedule new tasks,
in AssignGpuMemoryToTiles().
If this operation becomes too expensive, the CheckBusyResources()
function should only be called if some resource(s) are returned from the
parent compositor or when ResourcePool releases some resource.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@233374 0039d316-1c4b-4281-b951-d872f2087c98
Valgrind: retire suppression for bug 291240.
With underlying leak cause addressed, the suppression
is no longer needed.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@233195 0039d316-1c4b-4281-b951-d872f2087c98
add a LinuxSandbox::HasOpenDirectories() sanity check

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@233100 0039d316-1c4b-4281-b951-d872f2087c98
Adjust placement of innerHTML
In Blink rev 160981, innerHTML was moved from HTMLElement to Element.
Adjust UmaPolicy to match the new placement.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232388 0039d316-1c4b-4281-b951-d872f2087c98
Enable ActivityLogApiTest.TriggerEvent and update test
Blink rev has been rolled to r161048, which includes the innerHTML
move from HTMLElement to Element. Update and enable the test that had
to be disabled during the transition.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232385 0039d316-1c4b-4281-b951-d872f2087c98
ScopedNativeLibrary.Basic test fix
IsBadCodePtr() function was returning zero value randomly and the test was
raising false alarms sometimes. This fix changes the test to use
GetFunctionPointerFromNativeLibrary() instead.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232192 0039d316-1c4b-4281-b951-d872f2087c98
Disable ActivityLogApiTest.TriggerEvent while waiting for Blink roll
Blink will move innerHTML from HTMLElement from Element. Because this
test relies on the exact placement of the function, disable it during
the transition.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231961 0039d316-1c4b-4281-b951-d872f2087c98
Fix scoping of raw_bytes in URLRequestFileDirJob::OnListFile
data.info.GetName() returns a new FilePath object, and .value() thus
returns a reference to the string within that FilePath object.
This means that the FilePath object can vanish before the reference
to its contents is actually used - meaning whatever happens to be
on the stack will be accessed.
Fix by keeping a copy of the FilePath object in scope across call to

Introduced by r205019.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231821 0039d316-1c4b-4281-b951-d872f2087c98
Return matching plug-ins in the sorted order (by version number).
In case there are multiple plug-ins in one group (multiple versions
of Flash plug-in for example), returning sorted list that has highest
version first makes sure that Chrome won't try to load outdated
version and end up blocking it in the end.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231381 0039d316-1c4b-4281-b951-d872f2087c98
allow overriding default_font_cache_limit
Android uses a 1M default skia glyph cache, but all other builds that
use skia default to 20M.  This patch makes the value configurable so non-android builds can choose an optimal value.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@230999 0039d316-1c4b-4281-b951-d872f2087c98
Use relative path for scripts loaded in content WebUI's
Specifying relative path works exactly the same as specifying absolute
path, as long as the script is declared using
WebUIDataSource::AddResourcePath (which it is in case of changed
WebUIs). So there is no behavioral change in case of Chromium. The
reason for this change is it makes the live of embedders of content
easier when embedder is loading the WebUI from a scheme that is not
chrome: (it is opera: for us). It allows us to save on on adding
security policy overrides for each content WebUI.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@230401 0039d316-1c4b-4281-b951-d872f2087c98
remove sandbox/linux/seccomp-legacy references from licenses.py
sandbox/linux/seccomp-legacy no longer exists in the tree, so let's remove
references to it from the license documentation generation script.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@228592 0039d316-1c4b-4281-b951-d872f2087c98
Remove temporary <p> elements from printing tests.
The <p> elements were introduced temporarily in [1]. The blink bug is rolled
in, hence the <p> elements can be removed.

[1] https://src.chromium.org/viewvc/chrome?view=rev&revision=227076


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@228563 0039d316-1c4b-4281-b951-d872f2087c98
Functions that decoded ie7 structures to extract per-URL username and password assumed there will only be one such pair for a URL. Changed to work with URLs for which there are several sets of credentials stored.

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@228180 0039d316-1c4b-4281-b951-d872f2087c98
Non-US OS region generates invalid trace JSON.
JSON output from the trace logging has floats formatted
to the current user locale, which can make opening the
trace fail.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227730 0039d316-1c4b-4281-b951-d872f2087c98
Silence narrowing warning with XRectangle
XRectangle is defined as such in <X11/Xlib.h>:

typedef struct {
    short x, y;
    unsigned short width, height;
} XRectangle;


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227083 0039d316-1c4b-4281-b951-d872f2087c98
Trigger full html.css styles for some printing tests.
In Blink, @page UA styles is missing from the simple html stylesheet which
is used instead of html.css for documents which contains a certain subset
of html element types. Adding that @page rule to that simplified stylesheet
will change the actual results for these tests which have expectations
relying on that bug[1]:


This CL changes the expected results and adds a <p> element to those tests
in order to trigger the correct @page rule from html.css without the fix in
Blink. Then the Blink fix[2] can land and be rolled into chromium without
affecting the results of the mentioned tests.

After the Blink fix is rolled into chromium, the <p> elements can be safely
removed again.

[1] https://code.google.com/p/chromium/issues/detail?id=304021
[2] https://codereview.chromium.org/25856002/


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227076 0039d316-1c4b-4281-b951-d872f2087c98
Don't pull in content_switches.cc to whole chrome code base
The point of this change is remove compilation of content_switches.cc
that was done in installer_util target. This is a static library
that other parts of chrome pull in and that makes the Chrome code that
references those switches compile even if the switches itself are
not exported.
Installer_util doesn't even seem to uses those switches AFAIK.

Dropped compilation of these files so these problems are actually
exposed and addressed by the person adding the switch. The main
offender that referenced those switches was chrome's about_flags.cc.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@226921 0039d316-1c4b-4281-b951-d872f2087c98
Wait for store flush in CookieMonster::Delete*Task
Second attempt to commit this, after fixing a flaky test:


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@226720 0039d316-1c4b-4281-b951-d872f2087c98
Don't crash on invalid URL in GTK ContentShell
Entering an invalid URL crashed on the failing DCHECK in GURL::spec().


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@226715 0039d316-1c4b-4281-b951-d872f2087c98
Correct and simplify the cookie events browser test
The listeners were being removed in the completion callback to
chrome.cookies.set instead of in the chrome.cookiesonChanged
listener. Nothing guaranteed the order of these two, so the test
begun failing when delete started waiting for flush in

Simplify the tests by using listenOnce/listenForever.


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@226456 0039d316-1c4b-4281-b951-d872f2087c98
Remove superfluous "either"
Left in by mistake in https://codereview.chromium.org/3129003


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@226424 0039d316-1c4b-4281-b951-d872f2087c98
Make SchemaLoader independent of current working directory.
The SchemaLoader looks for schema files in the current directory. This
isn't very robust and may cause problems for other products than
Chromium if they run the script from a GYP file in another directory.

The SchemaLoader is supplied two arguments now: the path to API files
relative to the root path (for use in #includes) and the regular path
to API files (for file access).


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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225977 0039d316-1c4b-4281-b951-d872f2087c98
Fix missing SYS_mmap when building Android on x86.
Review URL: https://codereview.chromium.org/24560002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225533 0039d316-1c4b-4281-b951-d872f2087c98
Add Adreno GPU to deep memory profiler Android policies
The Adreno GPU is used on the Samsung Galaxy S4 GT-I9505.


Review URL: https://chromiumcodereview.appspot.com/23976012

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225199 0039d316-1c4b-4281-b951-d872f2087c98
Fixing destruction order in password_store_win_unittest.cc
The order of declaration now matches the order of initialization in
SetUp(). Previously, we would attempt to destroy temp_dir while
profile and login_db were still locking it.

A very similar fix to https://chromiumcodereview.appspot.com/18684002/

TEST=unit_tests.exe --gtest_filter="PasswordStoreWinTest.*"

Review URL: https://chromiumcodereview.appspot.com/24267003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@224379 0039d316-1c4b-4281-b951-d872f2087c98
Remove hard dependency on bundled python_26 in tests
(solution suggested in https://codereview.chromium.org/16117004/ )

The hardcoded dependency on third_party/python_26 in some unit tests
makes it necessary to bundle that python with the test binaries. On other
platforms the system python is used and there is no reason Windows can't
do the same if one is available.

This saves us band-width (25 MB per test machine) when distributing tests.

The change is implemented as a removal of the hard coded path in execution and
instead it's inserted at the end of the PATH environment variable. That way it
will still be used if there is no other python available but otherwise a
system python will be used.

There is a small risk that the system python is unsuitable but that is a risk we
already take on non-Windows platforms.

Another solution was discussed in https://codereview.chromium.org/16117004/ before
this solution was suggested.

Review URL: https://chromiumcodereview.appspot.com/21537002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@224096 0039d316-1c4b-4281-b951-d872f2087c98
Disable unittests that depends on OpenSSL when use_openssl==0
These unittests include headers that includes openssl/ssl.h
(sm_connection.h). For platforms that don't have access to
OpenSSL this won't work.


Review URL: https://chromiumcodereview.appspot.com/23724020

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@223893 0039d316-1c4b-4281-b951-d872f2087c98
Wait for store flush in CookieMonster::Delete*Task

Review URL: https://chromiumcodereview.appspot.com/18032002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@223324 0039d316-1c4b-4281-b951-d872f2087c98
Remove the problematic call to GLSurface::GetBackingFrameBufferObject.
GLContextVirtual::IsCurrent doesn't need to call
GetBackingFrameBufferObject on a surface, the IsOffScreen check should
be enough.

The direct reason for this change is that GLContextVirtual::IsCurrent's
use of GetBackingFrameBufferObject interferes with the implementation of
that function in TextureImageTransportSurface.
TextureImageTransportSurface::GetBackingFrameBufferObject creates an FBO
if needed. Unfortunately GLContextVirtual::IsCurrent is called early in
GLContextVirtual's initialization, too early for
TextureImageTransportSurface::GetBackingFrameBufferObject to create the
frame buffer object because it needs a fully initialized context to


Review URL: https://chromiumcodereview.appspot.com/23480048

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@222505 0039d316-1c4b-4281-b951-d872f2087c98
Properly dismiss the InputDialogs in all cases
On newer versions of Android, dismissing a date/time dialog (with hw
back or touch outside of it) will still set the date or time. This is
not the case on older Android versions.

This fix adds an OnDismissListener that makes sure the dialog is always
cancelled unless it already have been cancelled or already have reported
back a new date.


Review URL: https://chromiumcodereview.appspot.com/23533041

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@222027 0039d316-1c4b-4281-b951-d872f2087c98
test IWYU fixups for base
These are some of the suggestions from running include-what-you-use[1]
on the base target.

[1] https://code.google.com/p/include-what-you-use/


Review URL: https://chromiumcodereview.appspot.com/23540009

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@221067 0039d316-1c4b-4281-b951-d872f2087c98
Fix building with Java 7
javap includes type parameters in Java 7, causing jni_generator.py to generate invalid C++ code. Fix by stripping away anything after a '<'.


Review URL: https://chromiumcodereview.appspot.com/23587011

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@221027 0039d316-1c4b-4281-b951-d872f2087c98
Fix comment for WebUIDataSource::DisableReplaceExistingSource
Follow-up of review 22150004

Review URL: https://chromiumcodereview.appspot.com/23682003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@220297 0039d316-1c4b-4281-b951-d872f2087c98
content_shell: avoid debug crashing for mid-clicks on links.
There was a DCHECK in content_shell that we only opened links in the
current tab. That made middle clicks crash a debug content_shell and
I need to test middle clicks in Blink so that is no good.


Review URL: https://chromiumcodereview.appspot.com/23517003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@220281 0039d316-1c4b-4281-b951-d872f2087c98
Add content::RenderWidgetHost::MouseEventCallback
This adds the possibility to register mouse event callbacks with
RenderWidgetHost and get notified about all kinds of mouse events.  Any
callback can "handle" the event, in which case it's not propagated to the

Opera registers a mouse event callback to feed its mouse gesture recognizer
with events.  At this point, there is no other implementor of MouseEventCallback.

Review URL: https://chromiumcodereview.appspot.com/23416003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@220260 0039d316-1c4b-4281-b951-d872f2087c98
Call RecordLastRunAppBundlePath in FILE thread
RecordLastRunAppBundlePath() uses chrome::GetVersionedDirectory()
which in turn uses PathProvider for base::DIR_EXE, which will do I/O
on OS X since it uses base::MakeAbsoluteFilePath() now.

Reorder the sync call a bit so that we don't have to post another
FILE thread task to get the preferences synced.

TEST=Run Chromium; do (from command line):
"defaults read org.chromium.Chromium LastRunAppBundlePath"
-- should get path to Chromium.app; move Chromium.app to another
location and run it again; do "defaults ..." again -- should get path
to Chromium.app at new location.

Review URL: https://chromiumcodereview.appspot.com/22966010

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@220168 0039d316-1c4b-4281-b951-d872f2087c98
remove unused headers from sandbox_seccomp_bpf_linux.cc
sandbox_seccomp_bpf_linux.cc includes linux/audit.h and linux/filter.h but does not seem to use any of the macros or types defined within.


Review URL: https://chromiumcodereview.appspot.com/23226004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219630 0039d316-1c4b-4281-b951-d872f2087c98
Added 125% DPI option to ui::ScaleFactors.
Since Opera is meant to support 125% scale
factor I've added one more option to available

Review URL: https://chromiumcodereview.appspot.com/23011044

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219265 0039d316-1c4b-4281-b951-d872f2087c98
Add WebUIDataSourceImpl::DisableReplaceExistingSource
Currently when using WebUIDataSource object returned by content::WebUIDataSource::Create,
there is no way to override ShouldReplaceExistingSource for the URLDataSource object that
will be created by WebUIDataSource internally. As a result when WebUIDataSource of the same
type is added repeatedly for different instances of WebUI, the previous pending request on the data
source will be cancelled, resulting in broken WebUI page.
The New Tab Page in chromium doesn't suffer because it doesn't use WebUIDataSource,
however it's convinient and less work to use it for some WebUIs. It's also possible to work around
by avoiding adding WebUIDataSource repeatedly in the first place, but that is much more complicated
as we'll have to track is a certain WebUIDataSource already added or not for a given profile.
The proposed fix simply add the api to override ShouldReplaceExistingSource.


Review URL: https://chromiumcodereview.appspot.com/22150004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218710 0039d316-1c4b-4281-b951-d872f2087c98
CHR-458: Remove DCHECK which prevents from using custom ResourceBundle::Delegate
I need to create a Delegate for ResourceBundle. The only purpose of it is to provide our own fonts. Other resources should be handled by ResourceBundle. A method GetImageNamed() should also be handled by ResourceBundle. It works fine in release builds, but triggers an assert in debug builds.
DCHECK is triggered if a delegate does not create an image. This is wrong since the code can handle such case.

Review URL: https://chromiumcodereview.appspot.com/22418003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@217726 0039d316-1c4b-4281-b951-d872f2087c98
Made XmlWriter able to write elements with both attributes and content.
This adds a simple method to XmlWriter for appending content to an
already opened element. The only other way to add content to an element
was to call WriteElement, which doesn't allow adding attributes.


Review URL: https://chromiumcodereview.appspot.com/22337003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@217309 0039d316-1c4b-4281-b951-d872f2087c98
Take the navigation type into account when checking if the navigation is in page.
When navigating from ref url to non ref one the navigation type has decisive voice whether the navigation should be treated as in page.

Review URL: https://chromiumcodereview.appspot.com/21544005

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@216329 0039d316-1c4b-4281-b951-d872f2087c98
Fix GetNSExecutablePath for running tests with relative path
When running tests (zip_unittests.cc for instance) using
base::DIR_SOURCE_ROOT with ./<test_executable_name> they will get
incorrect directory names because ./ will be included in the return
value of GetNSExecutablePath() and it will be consider as one level
of parent directory by FilePath::DirName(). To avoid this problem we
should alway convert the value returned by GetNSExecutablePath() into
absolute path first.

TEST=see bug

Review URL: https://chromiumcodereview.appspot.com/18309008

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@215882 0039d316-1c4b-4281-b951-d872f2087c98
Adds strategy for deciding whether to show popup or zoom in when having tapped multiple targets.
Related review: https://codereview.chromium.org/19281007/


Review URL: https://chromiumcodereview.appspot.com/19256012

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@215843 0039d316-1c4b-4281-b951-d872f2087c98
The test framework doesn't really need to load resources and translations. This removes loading and changes the odd test that wasn't working anymore due to this change.

Review URL: https://chromiumcodereview.appspot.com/18429012

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@215763 0039d316-1c4b-4281-b951-d872f2087c98
avoid char+'\xHH' as it's too easy to use values > 127

Review URL: https://chromiumcodereview.appspot.com/21534003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@215124 0039d316-1c4b-4281-b951-d872f2087c98
Don't create extension actions for disabled extensions.
The GetOrCreateOrNull function creates extension actions if needed and
caches them for later. When an extension is unloaded, the cache is
Unfortunately it is possible for other listeners of the
NOTIFICATION_EXTENSION_UNLOADED to call GetOrCreateOrNull and the action
be recreated and cached for the extension being unloaded. The cached
action then exists even if the reloaded extension doesn't have the

This change prevents recreation of the action object for extensions that
are already unloaded.


Review URL: https://chromiumcodereview.appspot.com/20304002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@214767 0039d316-1c4b-4281-b951-d872f2087c98
Improve error handling in bspatch.


Review URL: https://chromiumcodereview.appspot.com/21049006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@214750 0039d316-1c4b-4281-b951-d872f2087c98
Notify about reset of the "displayed insecure content" state flag
and take it into when updating the navigation entry.

Review URL: https://chromiumcodereview.appspot.com/20986004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@214650 0039d316-1c4b-4281-b951-d872f2087c98
mesa should not to use X11 headers when use_x11==0
Mesa checks if MESA_EGL_NO_X11_HEADERS is defined before trying to
include X11 headers, we should set this if use_x11==0.


Review URL: https://chromiumcodereview.appspot.com/20265003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213918 0039d316-1c4b-4281-b951-d872f2087c98
only use gold-specific flags for the target linker
The host linker might not be gold if linux_use_gold_binary==0,
eg where we have a cross toolchain with gold and we want to use
that instead of third_party/gold/gold64.

Review URL: https://chromiumcodereview.appspot.com/19541006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212823 0039d316-1c4b-4281-b951-d872f2087c98
Fix a crash when built with 10.7 SDK running on OS X 10.6
NSWindowDidChangeBackingPropertiesNotification is available since 10.7.

Our buildbots use OS X 10.7 SDK to build with minimum target system
version set to 10.6. For features available only to 10.7 and up, we
normally have runtime guard to check if the system is 10.6 then we don't
use it.

However this one is in chromium content module and it doesn't have such
runtime check. We don't know the exact details of chromium buildbot or
how do they make release builds, it seems that they are building 10.6
releases with 10.6 SDK (which will disable the feature in compile time).


Review URL: https://chromiumcodereview.appspot.com/18674005

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212060 0039d316-1c4b-4281-b951-d872f2087c98
include missing headers in skia/ext/analysis_canvas.{h,cc}
skia/ext/analysis_canvas.h uses the OVERRIDE macro, but does not
include the header file that defines it.

And analysis_canvas.cc lacks the header for DCHECK.


Review URL: https://chromiumcodereview.appspot.com/18881003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212042 0039d316-1c4b-4281-b951-d872f2087c98
add missing headers in ppapi/*
Include a few headers that are required but not already included directly.


Review URL: https://chromiumcodereview.appspot.com/18209022

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211724 0039d316-1c4b-4281-b951-d872f2087c98
add missing headers in components/tracing/child_trace_message_filter.h and


Review URL: https://chromiumcodereview.appspot.com/18863004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211542 0039d316-1c4b-4281-b951-d872f2087c98
Fix the allHistory flag on chrome.history.onVisitRemoved event.
Calling chrome.history.deleteAll results in chrome.history.onVisitRemoved
events to be dispatched with the allHistory flag being false instead of true.
This fix changes the call to ExpireHistoryBetween so that begin_time and
end_time are null which results in the history backend using a special path
to delete all history and dispatch the right event.


Review URL: https://chromiumcodereview.appspot.com/18755003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211376 0039d316-1c4b-4281-b951-d872f2087c98
add missing headers in gpu code

Review URL: https://chromiumcodereview.appspot.com/18883003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211355 0039d316-1c4b-4281-b951-d872f2087c98
add missing header in indexed_db_backing_store.cc
This file uses IsStringASCII but didn't explicitly include the relevant header file.


Review URL: https://chromiumcodereview.appspot.com/18384006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211217 0039d316-1c4b-4281-b951-d872f2087c98
add missing header in webkit/browser/fileapi/file_system_usage_cache.cc
webkit/browser/fileapi/file_system_usage_cache.cc uses base::Bind but
does not include base/bind.h.


Review URL: https://chromiumcodereview.appspot.com/18421009

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211098 0039d316-1c4b-4281-b951-d872f2087c98
add missing headers in cc/*
cc/resources/worker_pool.cc uses ConditionVariable but doesn't
include base/synchronization/condition_variable.h.

And various files in cc/scheduler/ were missing base/logging.h and base/bind.h.


Review URL: https://chromiumcodereview.appspot.com/18804005

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211004 0039d316-1c4b-4281-b951-d872f2087c98
add missing includes in gpu/command_buffer/*
gpu/command_buffer/service/command_buffer_service.cc uses DCHECK* but
doesn't include base/logging.h

Similarly in gpu/command_buffer/service/transfer_buffer_manager.cc, which also lacks scoped_ptr.h.


Review URL: https://chromiumcodereview.appspot.com/18998002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210963 0039d316-1c4b-4281-b951-d872f2087c98
render_thread.h: include base/callback.h for Closure typedef
content/public/renderer/render_thread.h uses Closure but
does not directly include the header which provides this typedef.

Review URL: https://chromiumcodereview.appspot.com/18226007

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210821 0039d316-1c4b-4281-b951-d872f2087c98
make it possible to disable internal tracing in unofficial builds
Add a tracing_like_official_build gyp setting, which works similarly to
the logging_like_official_build setting.

Review URL: https://chromiumcodereview.appspot.com/18333010

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210650 0039d316-1c4b-4281-b951-d872f2087c98
Fixing destruction order in login database unit tests
Before, the ScopedTempDir would be destroyed before
LoginDatabase, which would still be locking the database file
within the temporary folder. This would cause an error in
ScopedTempDir's d-tor, and the temporary folder would stay
on disk.

Now the order of LoginDatabaseTest's members is aligned to
the order of initialization in SetUp and LoginDatabase is
destroyed before ScopedTempDir. This also makes the tests
run a lot faster on my Windows machine (>4s to 110ms).

TEST=unit_tests.exe --gtest_filter="LoginDatabaseTest.*"

Review URL: https://chromiumcodereview.appspot.com/18684002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210374 0039d316-1c4b-4281-b951-d872f2087c98
silence qcms __force_align_arg_pointer__ warning on mips too
Review URL: https://chromiumcodereview.appspot.com/18112005

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209815 0039d316-1c4b-4281-b951-d872f2087c98
Fix CopyFromBackingStore when there's no cg_layer_.
In CopyFromBackingStore use the cg_bitmap_ as the source in case cg_layer_
hasn't been created yet.


Review URL: https://chromiumcodereview.appspot.com/18052011

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209399 0039d316-1c4b-4281-b951-d872f2087c98
linux: make libc urandom override work for non-glibc too
This patch attempts to generalise the linux libc urandom override, so that it works for non-glibc linux platforms too.


Review URL: https://chromiumcodereview.appspot.com/18093002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209281 0039d316-1c4b-4281-b951-d872f2087c98
attempt to make the libc urandom override work for non-glibc too
This patch attempts to generalise the linux libc urandom override, so
that it works for non-glibc linux platforms too.

Review URL: https://chromiumcodereview.appspot.com/17066002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208924 0039d316-1c4b-4281-b951-d872f2087c98
allow unofficial builds with DCHECK and DLOG disabled
Previously, it was not possible to produce unofficial builds without

Review URL: https://chromiumcodereview.appspot.com/17165003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207826 0039d316-1c4b-4281-b951-d872f2087c98
linux: tcmalloc does not depend on glib
This seems to have been an old implicit assumption that use_glib==1 meant OS=="linux".

Review URL: https://chromiumcodereview.appspot.com/17076009

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207370 0039d316-1c4b-4281-b951-d872f2087c98
Add command line switch to enable region based columns.
This needs to be a separate switch - we cannot lump it together with
--enable-experimental-webkit-features , because we don't want
to unconditionally enable region based columns when running LayoutTests
(there are LayoutTests that compare rendering in the old and new multicol
implementations, using internals.settings.setRegionBasedColumnsEnabled(true)).


Review URL: https://chromiumcodereview.appspot.com/17057003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207005 0039d316-1c4b-4281-b951-d872f2087c98
don't override libc code in a glibc-specific way when not using glibc
We should not attempt to override libc functions using glibc-specific
code when not actually using glibc.  This still needs to be fixed
for other libc's though.

Review URL: https://chromiumcodereview.appspot.com/16132015

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@206040 0039d316-1c4b-4281-b951-d872f2087c98
add more string -> unsigned number conversion unit tests (attempt 2)
Add unit tests for the following functions in base:

Review URL: https://chromiumcodereview.appspot.com/15521004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@206031 0039d316-1c4b-4281-b951-d872f2087c98
Skip argv[0] when processing command line options in symlink.py
The problem fixed by this patch is that this script always creates a link
to itself in the target location. That behavior was probably not intended
and caused problems when running this script several times with the same
target folder. Each run of this script would create one expected link and
one link to the script itself. Meaning that the need to use --force the
second time was needed to overwrite the "self-link" from the first run.

Even with --force there were issues if this script was run in parallel
since there can be a race condition in overwriting the "self-link".

Review URL: https://chromiumcodereview.appspot.com/16096006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202661 0039d316-1c4b-4281-b951-d872f2087c98
untangle pango usage from use_x11 and OS==linux
This allows pango to be toggled independently of X11 and linux. It defaults 
to enabled on these.

Review URL: https://chromiumcodereview.appspot.com/15102010

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201892 0039d316-1c4b-4281-b951-d872f2087c98
add a macro that really identifies glibc
uClibc pretends to be glibc, so just checking for __GLIBC__ doesn't always
work.  Rather than check for defined(__GLIBC__) && !defined(__UCLIBC__) in
multiple places, do it once and define LIBC_GLIBC if we're certain that we're
really using glibc.


Review URL: https://chromiumcodereview.appspot.com/15405003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201761 0039d316-1c4b-4281-b951-d872f2087c98
Correct link for 'ISimpleDOM COM interfaces for accessibility'
The link in the third party list didn't work. Replacing
http://www.mozilla.org/en-US/access/windows/at-apis which is dead with
http://developer.mozilla.org/en-US/docs/Accessibility/AT-APIs instead.


Review URL: https://chromiumcodereview.appspot.com/15272003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201484 0039d316-1c4b-4281-b951-d872f2087c98
Gtk content shell: make the window shrinkable.
Don't treat a window resize request by setting the content widget's
minimum size; instead just resize the top level window.


Review URL: https://chromiumcodereview.appspot.com/14496004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201315 0039d316-1c4b-4281-b951-d872f2087c98
add more string -> unsigned number conversion unit tests
Add unit tests for the following functions in base:

Review URL: https://chromiumcodereview.appspot.com/14794002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201204 0039d316-1c4b-4281-b951-d872f2087c98
Fix link to NVidia Control X Extension Library homepage
Missing scheme in the link made it not work.


Review URL: https://chromiumcodereview.appspot.com/15302002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201023 0039d316-1c4b-4281-b951-d872f2087c98
Gtk content shell: map key F5 to reload.

Review URL: https://chromiumcodereview.appspot.com/14389010

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@199988 0039d316-1c4b-4281-b951-d872f2087c98
Feeding negative numbers to the HexStringToUInt64 should fail, with output 0 (the closest value in the datatype's range).
Review URL: https://chromiumcodereview.appspot.com/14109020

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@197614 0039d316-1c4b-4281-b951-d872f2087c98
fix capslock typo in net/third_party/nss/README.chromium
"License FILE:" should be "License File:".  This typo slipped through in this previous review:

Review URL: https://chromiumcodereview.appspot.com/14544002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@197103 0039d316-1c4b-4281-b951-d872f2087c98
Introduce arm_version to allow building for armv5, v6 or v7.
This patch deprecates armv7 and adds arm_version that takes an integer
value representing the ARM architecture level.

In addition arm_arch, arm_tune, arm_fpu, arm_float_abi and arm_thumb can
be set to fine tune CPU related compiler flags, defaults are provided for
ARM versions 5 to 7.


Review URL: https://chromiumcodereview.appspot.com/14065005

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@196702 0039d316-1c4b-4281-b951-d872f2087c98
Clear the background_page_ready flag in DisableExtension.
I've used a conservative approach and only clear the background_page_ready
flag. In the UnloadExtension method the whole extension_runtime_data_ for
the extension is cleared, so maybe the same should be done here?


Review URL: https://chromiumcodereview.appspot.com/14246028

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@195468 0039d316-1c4b-4281-b951-d872f2087c98
add --enable-spatial-navigation flag for testing
This depends on the following blink patch:

Review URL: https://chromiumcodereview.appspot.com/14110006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@194875 0039d316-1c4b-4281-b951-d872f2087c98
posix: replace nonstandard futimes call with futimens
Replace a futimes call with futimens which is specified in POSIX.1-2008.


Review URL: https://chromiumcodereview.appspot.com/13818027

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@194862 0039d316-1c4b-4281-b951-d872f2087c98
Remove zero length composing spans.
This fixes the following logcat error:
E/SpannableStringBuilder(14995): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length


Review URL: https://chromiumcodereview.appspot.com/13820016

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193948 0039d316-1c4b-4281-b951-d872f2087c98
fix gcc 4.7 compilation errors in base_unittests
Compiling base_unittests with gcc 4.7 on linux gives these errors:
../../base/logging_unittest.cc: In member function 'virtual void logging::{anonymous}::LoggingTest_BasicLogging_Test::TestBody()':
../../base/logging_unittest.cc:68:172: error: converting 'false' to pointer type for argument 1 of 'char testing::internal::IsNullLiteralHelper(testing::internal::Secret*)' [-Werror=conversion-null]
../../base/logging_unittest.cc: In member function 'virtual void logging::{anonymous}::LoggingTest_LogIsOn_Test::TestBody()':
../../base/logging_unittest.cc:123:174: error: converting 'false' to pointer type for argument 1 of 'char testing::internal::IsNullLiteralHelper(testing::internal::Secret*)' [-Werror=conversion-null]
../../base/logging_unittest.cc:132:174: error: converting 'false' to pointer type for argument 1 of 'char testing::internal::IsNullLiteralHelper(testing::internal::Secret*)' [-Werror=conversion-null]
../../base/logging_unittest.cc:141:174: error: converting 'false' to pointer type for argument 1 of 'char testing::internal::IsNullLiteralHelper(testing::internal::Secret*)' [-Werror=conversion-null]

Switching from EXPECT_EQ(false, something) to EXPECT_TRUE(false == something)
fixes the problem.

Review URL: https://chromiumcodereview.appspot.com/14019004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193872 0039d316-1c4b-4281-b951-d872f2087c98
Android: fix link error for android_full_debug=1
android_full_debug=1 fails to link with "undefined reference to
__cxa_bad_typeid". Work around this by telling the linker to ignore
unused input sections.

Review URL: https://chromiumcodereview.appspot.com/13772007

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@193737 0039d316-1c4b-4281-b951-d872f2087c98
Android: improve native debuggability
When starting with --wait-for-debugger command line option, it's ending
up in a busy loop waiting for a variable to be changed. Change that busy
loop from a macro to a function. It avoids having to step on instruction
level to find the right stack frame before the variable is visible.

Review URL: https://chromiumcodereview.appspot.com/13597005

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192944 0039d316-1c4b-4281-b951-d872f2087c98
libflac and libspeex are only used if input_speech==1, so add the dependencies as needed.

Review URL: https://chromiumcodereview.appspot.com/13431003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192653 0039d316-1c4b-4281-b951-d872f2087c98
remove redundant DCHECK that a size_t variable >= 0
SampleVector::GetCountAtIndex has a DCHECK which checks that a size_t
variable is >= 0 and then some other condition.  But size_t is an
unsigned type so the first part of the check is useless (and it
gives an error because of this with clang).

Review URL: https://chromiumcodereview.appspot.com/13006014

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@190776 0039d316-1c4b-4281-b951-d872f2087c98
Make it possible to override the default mipsel sysroot.
Also, update the default mipsel sysroot to match the work in issue 12315003.

Review URL: https://chromiumcodereview.appspot.com/12387011

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186251 0039d316-1c4b-4281-b951-d872f2087c98
add a use_alsa gyp setting
By adding a gyp setting, we can explicitly disable alsa on various
unix targets that don't include alsa.


TEST=Build with use_alsa=0 then run ldd on output binaries to verify libasound is not listed (and is listed if built with use_alsa=1 or unspecified).

Review URL: https://chromiumcodereview.appspot.com/12316049

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@185011 0039d316-1c4b-4281-b951-d872f2087c98
ffmpeg_unittests should depend on use_ffmpeg==1
This target currently makes assumptions based on the platform, even though there's an explicit variable that was previously set for this purpose.

Review URL: https://chromiumcodereview.appspot.com/12334037

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@184320 0039d316-1c4b-4281-b951-d872f2087c98
if PKG_CONFIG_PATH is already set, pkg-config-wrapper should use these dirs too
If PKG_CONFIG_PATH is set, then prepend these paths to those generated
by the wrapper.  This allows cross-compilation using sysroots with pkgconfig
directories in non-standard locations.

This change is safer than the original patch (https://codereview.chromium.org/12320047/), which was reverted (https://codereview.chromium.org/12317063/) due to what appears to be a chromeos builder with PKG_CONFIG_PATH set to an incomplete value (should probably be unset).

Add Opera Software to the AUTHORS file


Review URL: https://chromiumcodereview.appspot.com/12340023

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@184184 0039d316-1c4b-4281-b951-d872f2087c98
pkg-config-wrapper shouldn't clobber PKG_CONFIG_PATH if it is already set
This allows cross-compilation using sysroots with pkgconfig directories in
non-standard locations.

Add Opera Software to the AUTHORS file


Review URL: https://chromiumcodereview.appspot.com/12320047

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@183957 0039d316-1c4b-4281-b951-d872f2087c98