mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-11 12:25:53 +00:00
Bug 945655 - Composite filters with operator IN have a result that is the intersection of the input rects, not the union. FilterNodeSoftware part. r=roc
This commit is contained in:
parent
00b64761cd
commit
2e2049d8be
@ -2652,7 +2652,12 @@ FilterNodeCompositeSoftware::GetOutputRectInRect(const IntRect& aRect)
|
||||
{
|
||||
IntRect rect;
|
||||
for (size_t inputIndex = 0; inputIndex < NumberOfSetInputs(); inputIndex++) {
|
||||
rect = rect.Union(GetInputRectInRect(IN_COMPOSITE_IN_START + inputIndex, aRect));
|
||||
IntRect inputRect = GetInputRectInRect(IN_COMPOSITE_IN_START + inputIndex, aRect);
|
||||
if (mOperator == COMPOSITE_OPERATOR_IN && inputIndex > 0) {
|
||||
rect = rect.Intersect(inputRect);
|
||||
} else {
|
||||
rect = rect.Union(inputRect);
|
||||
}
|
||||
}
|
||||
return rect;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user