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

Issue 198783006: Hold SVGFontFaceElement in SVGDocumentExtensions until StyleRecalc is finished (Closed)

Created:
6 years, 9 months ago by tasak
Modified:
6 years, 9 months ago
CC:
blink-reviews, krit, fs, ed+blinkwatch_opera.com, f(malita), gyuyoung.kim_webkit.org, Stephen Chennney, kouhei+svg_chromium.org, pdr., rwlbuis, Kunihiko Sakamoto
Visibility:
Public.

Description

Hold SVGFontFaceElement in SVGDocumentExtensions until StyleRecalc is finished. - added HashSet holding SVGFontFaceElement and cleared after document's style recalc is finished, and - made widthIterator return default value when SVGFontFaceElement is not in document. BUG=352178 TEST=fast/dom/remove-svg-font-face-element-crash.xhtml Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=169774

Patch Set 1 #

Total comments: 4

Patch Set 2 : Added HashSet to SVGDocumentExtensions #

Patch Set 3 : Fixed indent #

Unified diffs Side-by-side diffs Delta from patch set Stats (+83 lines, -5 lines) Patch
A LayoutTests/fast/dom/remove-svg-font-face-element-crash.xhtml View 1 2 1 chunk +46 lines, -0 lines 0 comments Download
A LayoutTests/fast/dom/remove-svg-font-face-element-crash-expected.txt View 1 chunk +2 lines, -0 lines 0 comments Download
M Source/core/dom/Document.cpp View 1 2 1 chunk +4 lines, -0 lines 0 comments Download
M Source/core/svg/SVGDocumentExtensions.h View 1 2 chunks +5 lines, -0 lines 0 comments Download
M Source/core/svg/SVGDocumentExtensions.cpp View 1 2 chunks +12 lines, -0 lines 0 comments Download
M Source/core/svg/SVGFontData.cpp View 1 4 chunks +10 lines, -3 lines 0 comments Download
M Source/core/svg/SVGFontFaceElement.cpp View 1 1 chunk +4 lines, -2 lines 0 comments Download

Messages

Total messages: 15 (0 generated)
tasak
PTAL?
6 years, 9 months ago (2014-03-17 06:30:45 UTC) #1
kouhei (in TOK)
non-owner lgtm https://codereview.chromium.org/198783006/diff/1/LayoutTests/fast/dom/remove-svg-font-face-element-crash.xhtml File LayoutTests/fast/dom/remove-svg-font-face-element-crash.xhtml (right): https://codereview.chromium.org/198783006/diff/1/LayoutTests/fast/dom/remove-svg-font-face-element-crash.xhtml#newcode5 LayoutTests/fast/dom/remove-svg-font-face-element-crash.xhtml:5: <defs> Nit: indent consistently?
6 years, 9 months ago (2014-03-17 09:39:26 UTC) #2
dglazkov
+esprehn. This fix is pretty gnarly. Elliott, WDYT?
6 years, 9 months ago (2014-03-17 16:31:27 UTC) #3
esprehn
not lgtm, the RenderStyle should store a RefPtr instead. We could also use a WeakPtr ...
6 years, 9 months ago (2014-03-17 17:12:01 UTC) #4
tasak
Thank you for reviewing. The reason why I didn't change SVGFontFaceElement* to RefPtr<SVGFontFaceElement> in SVGFontData.h ...
6 years, 9 months ago (2014-03-18 02:23:04 UTC) #5
tasak
On 2014/03/18 02:23:04, tasak wrote: > > So is it ok to traverse RenderTree to ...
6 years, 9 months ago (2014-03-18 03:48:50 UTC) #6
tasak
Would you review this new approach? https://codereview.chromium.org/198783006/diff/1/LayoutTests/fast/dom/remove-svg-font-face-element-crash.xhtml File LayoutTests/fast/dom/remove-svg-font-face-element-crash.xhtml (right): https://codereview.chromium.org/198783006/diff/1/LayoutTests/fast/dom/remove-svg-font-face-element-crash.xhtml#newcode5 LayoutTests/fast/dom/remove-svg-font-face-element-crash.xhtml:5: <defs> On 2014/03/17 ...
6 years, 9 months ago (2014-03-18 10:43:26 UTC) #7
esprehn
lgtm
6 years, 9 months ago (2014-03-20 04:02:45 UTC) #8
esprehn
The CQ bit was checked by esprehn@chromium.org
6 years, 9 months ago (2014-03-20 04:02:49 UTC) #9
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/tasak@google.com/198783006/40001
6 years, 9 months ago (2014-03-20 04:02:56 UTC) #10
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 9 months ago (2014-03-20 04:06:05 UTC) #11
commit-bot: I haz the power
Try jobs failed on following builders: tryserver.blink on blink_presubmit
6 years, 9 months ago (2014-03-20 04:06:05 UTC) #12
esprehn
The CQ bit was checked by esprehn@chromium.org
6 years, 9 months ago (2014-03-21 21:08:30 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/tasak@google.com/198783006/40001
6 years, 9 months ago (2014-03-21 21:08:34 UTC) #14
commit-bot: I haz the power
6 years, 9 months ago (2014-03-22 04:07:53 UTC) #15
Message was sent while issue was closed.
Change committed as 169774

Powered by Google App Engine
This is Rietveld 408576698