Re: [OpenJDK 2D-Dev] [9] request for review: 8036022: D3D: rendering with XOR composite causes InternalError.

2014-03-20 Thread Sergey Bylokhov
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

Re: [OpenJDK 2D-Dev] [9] request for review: 8036022: D3D: rendering with XOR composite causes InternalError.

2014-03-19 Thread Andrew Brygin
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

Re: [OpenJDK 2D-Dev] [9] request for review: 8036022: D3D: rendering with XOR composite causes InternalError.

2014-03-19 Thread Jim Graham
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

Re: [OpenJDK 2D-Dev] [9] request for review: 8036022: D3D: rendering with XOR composite causes InternalError.

2014-03-17 Thread Andrew Brygin
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.