Open Bug 1016703 Opened 10 years ago Updated 2 years ago

Account for various sources of nsPresContext dark matter

Categories

(Core :: Layout, defect)

defect

Tracking

()

People

(Reporter: jwatt, Assigned: jwatt)

References

(Blocks 2 open bugs)

Details

(Whiteboard: [MemShrink:P2])

Attachments

(1 file)

      No description provided.
Attached patch part 1 (deleted) — Splinter Review
Account for 2,496 B on OS X in static SVG-as-an-image documents
where there is no user interaction.
Attachment #8429650 - Flags: review?(n.nethercote)
Whiteboard: [MemShrink] → [MemShrink:P2]
I think mRefreshDriver is shared with the parent in some situations.
Comment on attachment 8429650 [details] [diff] [review]
part 1

Review of attachment 8429650 [details] [diff] [review]:
-----------------------------------------------------------------

If there is possible sharing here, an nsPresContext expert should review this as well.

::: layout/base/nsPresContext.cpp
@@ +2676,5 @@
> +  total += aMallocSizeOf(mEventManager);
> +  total += aMallocSizeOf(mTransitionManager);
> +  total += aMallocSizeOf(mAnimationManager);
> +  total += aMallocSizeOf(mRestyleManager);
> +  total += aMallocSizeOf(mRefreshDriver);

These are all complex structs which have things hanging off them, but this code doesn't measure those things. Each of these classes needs to be given -- or already has -- a SizeOfIncludingThis() function which should be called. For example:

  total += mEventManager->SizeOfIncludingThis()
Attachment #8429650 - Flags: review?(n.nethercote) → review-
Blocks: 1054016
No longer blocks: 1347543
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: