Bug 951216. Avoid unnecessary Snapshot() copies by clearing the pattern. r=Bas

gfxSurfaceDrawable::Draw() sets a gfxPattern(Snapshot()) to the gfxContext's
pattern. If the gfxSurfaceDrawable is created by
CreateSamplingRestrictedDrawable it will be destroyed before the Snapshot().
This causes the Snapshot to be copied unnecessarily.

If we set the pattern to something else we'll destroy the snapshot before the
gfxSurfaceDrawable and save a copy.

--HG--
extra : rebase_source : 03864e8a0fe021940747cf691df30ec51e4d8b2d