| OLD | NEW |
| 1 /** | 1 /** |
| 2 * Copyright (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) | 2 * Copyright (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) |
| 3 * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. | 3 * Copyright (C) 2006, 2007 Apple Inc. All rights reserved. |
| 4 * | 4 * |
| 5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
| 6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
| 7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
| 8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
| 9 * | 9 * |
| 10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
| (...skipping 450 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 461 // directives must occur, in which case, LayoutCounter::destroyCounterNodes(
) | 461 // directives must occur, in which case, LayoutCounter::destroyCounterNodes(
) |
| 462 // must be called. | 462 // must be called. |
| 463 // The destruction of the LayoutObject (possibly caused by the removal of it
s | 463 // The destruction of the LayoutObject (possibly caused by the removal of it
s |
| 464 // associated DOM node) is the other case that leads to the permanent | 464 // associated DOM node) is the other case that leads to the permanent |
| 465 // destruction of all counters attached to a LayoutObject. In this case | 465 // destruction of all counters attached to a LayoutObject. In this case |
| 466 // LayoutCounter::destroyCounterNodes() must be and is now called, too. | 466 // LayoutCounter::destroyCounterNodes() must be and is now called, too. |
| 467 // LayoutCounter::destroyCounterNodes() handles destruction of the counter | 467 // LayoutCounter::destroyCounterNodes() handles destruction of the counter |
| 468 // map associated with a layoutObject, so there is no risk in leaking the ma
p. | 468 // map associated with a layoutObject, so there is no risk in leaking the ma
p. |
| 469 } | 469 } |
| 470 | 470 |
| 471 void LayoutCounter::layoutObjectRemovedFromTree(LayoutObject* layoutObject) | 471 void LayoutCounter::layoutObjectSubtreeWillBeDetached(LayoutObject* layoutObject
) |
| 472 { | 472 { |
| 473 ASSERT(layoutObject->view()); | 473 ASSERT(layoutObject->view()); |
| 474 if (!layoutObject->view()->hasLayoutCounters()) | 474 if (!layoutObject->view()->hasLayoutCounters()) |
| 475 return; | 475 return; |
| 476 LayoutObject* currentLayoutObject = layoutObject->lastLeafChild(); | 476 LayoutObject* currentLayoutObject = layoutObject->lastLeafChild(); |
| 477 if (!currentLayoutObject) | 477 if (!currentLayoutObject) |
| 478 currentLayoutObject = layoutObject; | 478 currentLayoutObject = layoutObject; |
| 479 while (true) { | 479 while (true) { |
| 480 destroyCounterNodes(*currentLayoutObject); | 480 destroyCounterNodes(*currentLayoutObject); |
| 481 if (currentLayoutObject == layoutObject) | 481 if (currentLayoutObject == layoutObject) |
| (...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 598 fprintf(stderr, " "); | 598 fprintf(stderr, " "); |
| 599 fprintf(stderr, "%p N:%p P:%p PS:%p NS:%p C:%p\n", | 599 fprintf(stderr, "%p N:%p P:%p PS:%p NS:%p C:%p\n", |
| 600 current, current->node(), current->parent(), current->previousSiblin
g(), | 600 current, current->node(), current->parent(), current->previousSiblin
g(), |
| 601 current->nextSibling(), current->hasCounterNodeMap() ? | 601 current->nextSibling(), current->hasCounterNodeMap() ? |
| 602 counterName ? blink::counterMaps().get(current)->get(identifier) : (
blink::CounterNode*)1 : (blink::CounterNode*)0); | 602 counterName ? blink::counterMaps().get(current)->get(identifier) : (
blink::CounterNode*)1 : (blink::CounterNode*)0); |
| 603 } | 603 } |
| 604 fflush(stderr); | 604 fflush(stderr); |
| 605 } | 605 } |
| 606 | 606 |
| 607 #endif // NDEBUG | 607 #endif // NDEBUG |
| OLD | NEW |