RESOLVED FIXED 132066
REGRESSION (r168046): [New Multicolumn] Selection into and out of column-span elements doesn't work
https://bugs.webkit.org/show_bug.cgi?id=132066
Summary REGRESSION (r168046): [New Multicolumn] Selection into and out of column-span...
Dave Hyatt
Reported 2014-04-23 11:07:19 PDT
Selection across column-spans doesn't work because the render tree is all scrambled up. We need to patch the iteration in RenderView that walks selection subtrees to do the right thing when it encounters the span's placeholder.
Attachments
Patch (7.62 KB, patch)
2014-05-01 09:57 PDT, Dave Hyatt
no flags
Patch (7.66 KB, patch)
2014-05-01 11:14 PDT, Dave Hyatt
oliver: review+
commit-queue: commit-queue-
Dave Hyatt
Comment 1 2014-05-01 09:57:07 PDT
WebKit Commit Bot
Comment 2 2014-05-01 09:58:01 PDT
Attachment 230585 [details] did not pass style-queue: ERROR: Source/WebCore/rendering/RenderView.cpp:58: This { should be at the end of the previous line [whitespace/braces] [4] ERROR: Source/WebCore/rendering/RenderView.cpp:62: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/WebCore/rendering/RenderView.cpp:67: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/WebCore/rendering/RenderView.cpp:77: Place brace on its own line for function definitions. [whitespace/braces] [4] Total errors found: 4 in 3 files If any of these errors are false positives, please file a bug against check-webkit-style.
Dave Hyatt
Comment 3 2014-05-01 11:14:58 PDT
Created attachment 230596 [details] Patch pass style queue.
WebKit Commit Bot
Comment 4 2014-05-01 11:16:12 PDT
Attachment 230596 [details] did not pass style-queue: ERROR: Source/WebCore/rendering/RenderView.cpp:58: This { should be at the end of the previous line [whitespace/braces] [4] Total errors found: 1 in 3 files If any of these errors are false positives, please file a bug against check-webkit-style.
Oliver Hunt
Comment 5 2014-05-01 11:21:28 PDT
Comment on attachment 230596 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=230596&action=review > Source/WebCore/rendering/RenderView.cpp:59 > + RenderObject* m_current; RenderPtr<RenderObject> please - i dream of having these things not disappearing from beneath us :( Even though the current uses imply no state mutation, i don't like the idea of making an "iterator" that could be accidentally used in a context that leads to mutation
Dave Hyatt
Comment 6 2014-05-01 11:40:18 PDT
(In reply to comment #5) > (From update of attachment 230596 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=230596&action=review > > > Source/WebCore/rendering/RenderView.cpp:59 > > + RenderObject* m_current; > > RenderPtr<RenderObject> please - i dream of having these things not disappearing from beneath us :( > > Even though the current uses imply no state mutation, i don't like the idea of making an "iterator" that could be accidentally used in a context that leads to mutation I don't think this is an appropriate place for RenderPtr. This is just a read-only loop of the selected objects. Nothing is mutated. The iterator is confined to the .cpp file, so it's not going to see any weird usage. If this were longer-lasting or designed for re-use I would see your point, but there's no use case for this that would make any sense in the presence of mutation.
Oliver Hunt
Comment 7 2014-05-01 11:47:12 PDT
Comment on attachment 230596 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=230596&action=review >>> Source/WebCore/rendering/RenderView.cpp:59 >>> + RenderObject* m_current; >> >> RenderPtr<RenderObject> please - i dream of having these things not disappearing from beneath us :( >> >> Even though the current uses imply no state mutation, i don't like the idea of making an "iterator" that could be accidentally used in a context that leads to mutation > > I don't think this is an appropriate place for RenderPtr. This is just a read-only loop of the selected objects. Nothing is mutated. The iterator is confined to the .cpp file, so it's not going to see any weird usage. If this were longer-lasting or designed for re-use I would see your point, but there's no use case for this that would make any sense in the presence of mutation. okie dokie
WebKit Commit Bot
Comment 8 2014-05-01 13:08:52 PDT
Comment on attachment 230596 [details] Patch Rejecting attachment 230596 [details] from commit-queue. Failed to run "['/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch', '--status-host=webkit-queues.appspot.com', '--bot-id=webkit-cq-02', 'apply-attachment', '--no-update', '--non-interactive', 230596, '--port=mac']" exit_code: 2 cwd: /Volumes/Data/EWS/WebKit Last 500 characters of output: #5 succeeded at 774 (offset 1 line). Hunk #6 succeeded at 928 (offset 1 line). Hunk #7 succeeded at 946 (offset 1 line). Hunk #8 succeeded at 972 (offset 1 line). Hunk #9 succeeded at 986 (offset 1 line). Hunk #10 succeeded at 1011 (offset 1 line). 1 out of 10 hunks FAILED -- saving rejects to file Source/WebCore/rendering/RenderView.cpp.rej Failed to run "[u'/Volumes/Data/EWS/WebKit/Tools/Scripts/svn-apply', '--force', '--reviewer', u'Oliver Hunt']" exit_code: 1 cwd: /Volumes/Data/EWS/WebKit Full output: http://webkit-queues.appspot.com/results/6426956396494848
Dave Hyatt
Comment 9 2014-05-01 14:00:51 PDT
Fixed in r168121.
Note You need to log in before you can comment on or make changes to this bug.