diff options
Diffstat (limited to 'generic')
-rw-r--r-- | generic/Group.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/generic/Group.c b/generic/Group.c index d2908e7..ad1d706 100644 --- a/generic/Group.c +++ b/generic/Group.c @@ -840,12 +840,16 @@ ToArea(Item item, if (IsEmptyBBox(&inter)) { continue; } - if (current_item->class != ZnGroup) { - PushTransform(current_item); - } if ((current_item->class != ZnGroup) || atomic || ta->recursive) { - result = current_item->class->ToArea(current_item, ta); + if (current_item->class != ZnGroup) { + PushTransform(current_item); + result = current_item->class->ToArea(current_item, ta); + PopTransform(current_item); + } + else { + result = current_item->class->ToArea(current_item, ta); + } outside &= (result == -1); inside &= (result == 1); empty = False; @@ -870,9 +874,6 @@ ToArea(Item item, ZnDoItem(item->wi->interp, current_item, ZN_NO_PART, ta->tag_uid); } } - if (current_item->class != ZnGroup) { - PopTransform(current_item); - } } /* |