Fix pointer aliasing bug in SkImageFilter::computeFastBounds.

Since src and dst are explicitly allowed to alias (according to a comment in
SkPaint.h), it is problematic to have the first input filter mutate dst, since
we still need access to the previous value to provide to the other input
filters.

To resolve this, SkImageFilter::computeFastBounds makes a copy of src on the
stack, and passes that to its inputs instead.

Also add a unit test that would have detected the issue.

GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1800263002

Review URL: https://codereview.chromium.org/1800263002
2 files changed