Fix assert failure caused by ImageExtractor and optimize test

unlockPixels is always called in the ImageExtractor destructor if
m_skiaImage is non-null. Clear m_skiaImage if extractImage fails and
lockPixels is never called so that lockPixels and unlockPixels calls
will be in balance.

Also optimize webgl-large-texture.html test, since some of the test
timeouts could be caused by the test running too long. Optimizations
include avoiding conversion between RGBA and RGB, checking the pixels in
32 bit chunks instead of 8 bits at a time, and loading the image from a
file instead of generating a JPEG data URL dynamically.

TEST=fast/canvas/webgl/webgl-large-texture.html
BUG=358313
R=kbr@chromium.org, skyostil@chromium.org

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

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