Reland change to enable deferred image decoding for animated GIFs

Fixed two issues that caused the revert:
1. Report alpha/opaque state of a frame correctly. Caches the value of
   this state for all frames. Every time a frame is requested
   ImageFrame::setHasAlpha() is called to update to the latest state.
2. Fixed a crash when decoder returns an empty frame. This is possible
   for some bad GIF files.

BUG=169377,259786,259783
R=senorblanco@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@154537 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Make atob() throw an InvalidCharacterError on excess padding characters

According to the latest specification, window.atob() should throw an
InvalidCharacterError on excess padding characters:
http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#dom-windowbase64-atob

This behavior is consistent with both Firefox and IE10.

We are now down from 26 failures to 12 on the following test suite:
http://www.w3c-test.org/html/tests/submission/AryehGregor/base64.html

BUG=261200

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

git-svn-id: svn://svn.chromium.org/blink/trunk@154538 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove the last SVG callers of bloatedCharacters

This CL removes the calls to bloatedCharacters from SVGTextLayoutEngine and
SVGTextLayoutAttributesBuilder. Originally, these call sites looked scary to
me, but they turned out to be fairly straightforward.

R=eseidel
BUG=254708

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

git-svn-id: svn://svn.chromium.org/blink/trunk@154539 bbb929c8-8fbe-4397-9dbb-9b2b20218538
IndexedDB: Remove unused unit test file

Was removed from gypi but the file was still around. The tests
now live in Chromium's indexed_db_database_unittest.cc

BUG=234278
TBR=jamesr@chromium.org
NOTRY=true

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

git-svn-id: svn://svn.chromium.org/blink/trunk@154540 bbb929c8-8fbe-4397-9dbb-9b2b20218538
The 'refresh' pragma directive should be subject to sandboxing.

According to the spec[1], we ought to be limiting meta refreshing based
on the document's sandboxed automatic features browsing context flag.
This patch adds that check into Document::processHttpEquivRefresh.

[1]: http://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#attr-meta-http-equiv-refresh

BUG=261603

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

git-svn-id: svn://svn.chromium.org/blink/trunk@154541 bbb929c8-8fbe-4397-9dbb-9b2b20218538