Hi, Andrew.
The fix looks good to me too.
On 3/20/14 4:51 AM, Jim Graham wrote:
Hi Andrew,
revalidateAll() unconditionally calls validatePipe() which will do all
of the work for choosing pipelines again anyway (I don't think any
implementations of validatePipe try to share too much, do
Hi Jim,
we probably may want to avoid the unconditional invalidation here
due to performance reasons. Potentially it saves some work if the
replacement type is exactly same, and the current set of pipes can
be re-used.
However, as soon as there seems to be no reliable way to check
Hi Andrew,
revalidateAll() unconditionally calls validatePipe() which will do all
of the work for choosing pipelines again anyway (I don't think any
implementations of validatePipe try to share too much, do they?) Also,
this tends to be called when the surface was invalidated and an
Hello Jim,
I have completely changed the fix while trying to answer your questions :)
I agree that the check for composite type is incorrect: in fact we
have to check
whether the gdi surface data can be used as a destination for
rendering primitives
which the 'loops' filed refers to.