Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(20)

Issue 1788263002: SkPDF: remove all globally references SkPDFObjects (Closed)

Created:
4 years, 9 months ago by hal.canary
Modified:
4 years, 9 months ago
Reviewers:
mtklein, djsollen
CC:
reviews_skia.org
Base URL:
https://skia.googlesource.com/skia.git@master
Target Ref:
refs/heads/master
Project:
skia
Visibility:
Public.

Description

SkPDF: remove all globally references SkPDFObjects Move these singletons into SkPDFCanon (there is still a single object per document; output PDF size will not change). Motivation: After this change, all indirectly-referenced SkPDFObjects are serialized exactly once. The next CL will add a memory saving feature: a method to purge an object's resources immediately after serialization. After that, further changes wil allow some objects to be serialized *before* SkDocument::close(), leading to potentially very large memory savings. BUG=skia:5087 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1788263002 Committed: https://skia.googlesource.com/skia/+/1437c1eea8f40f7a43bfe6e80a8d3f6cd61a3643

Patch Set 1 #

Total comments: 2

Patch Set 2 : add explanatory comments #

Unified diffs Side-by-side diffs Delta from patch set Stats (+74 lines, -59 lines) Patch
M src/pdf/SkPDFCanon.h View 2 chunks +7 lines, -0 lines 0 comments Download
M src/pdf/SkPDFCanon.cpp View 1 chunk +22 lines, -0 lines 0 comments Download
M src/pdf/SkPDFDevice.cpp View 1 2 chunks +6 lines, -3 lines 0 comments Download
M src/pdf/SkPDFGraphicState.h View 2 chunks +9 lines, -16 lines 0 comments Download
M src/pdf/SkPDFGraphicState.cpp View 1 4 chunks +13 lines, -25 lines 0 comments Download
M src/pdf/SkPDFShader.h View 1 chunk +2 lines, -0 lines 0 comments Download
M src/pdf/SkPDFShader.cpp View 1 8 chunks +15 lines, -15 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 15 (6 generated)
hal.canary
ptal
4 years, 9 months ago (2016-03-12 17:31:15 UTC) #3
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1788263002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1788263002/1
4 years, 9 months ago (2016-03-12 20:35:15 UTC) #5
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 9 months ago (2016-03-12 20:43:46 UTC) #7
mtklein
Now that the Canon owns these, is it still important that these are also ref-counted? ...
4 years, 9 months ago (2016-03-13 13:49:52 UTC) #8
hal.canary
https://codereview.chromium.org/1788263002/diff/1/src/pdf/SkPDFGraphicState.cpp File src/pdf/SkPDFGraphicState.cpp (right): https://codereview.chromium.org/1788263002/diff/1/src/pdf/SkPDFGraphicState.cpp#newcode162 src/pdf/SkPDFGraphicState.cpp:162: sMaskDict->insertObjRef("TR", canon->makeInvertFunction()); On 2016/03/13 13:49:52, mtklein wrote: > Might ...
4 years, 9 months ago (2016-03-13 19:07:21 UTC) #9
hal.canary
On 2016/03/13 13:49:52, mtklein wrote: > Now that the Canon owns these, is it still ...
4 years, 9 months ago (2016-03-13 19:08:54 UTC) #10
mtklein
lgtm
4 years, 9 months ago (2016-03-14 01:12:44 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1788263002/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1788263002/20001
4 years, 9 months ago (2016-03-14 01:22:07 UTC) #13
commit-bot: I haz the power
4 years, 9 months ago (2016-03-14 01:30:28 UTC) #15
Message was sent while issue was closed.
Committed patchset #2 (id:20001) as
https://skia.googlesource.com/skia/+/1437c1eea8f40f7a43bfe6e80a8d3f6cd61a3643

Powered by Google App Engine
This is Rietveld 408576698