[Webkit-unassigned] [Bug 151300] REGRESSION(r8780): Backwards delete by word incorrectly appends deleted text to kill ring, should be prepend
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Sun Nov 15 22:47:34 PST 2015
https://bugs.webkit.org/show_bug.cgi?id=151300
--- Comment #2 from Brian Burg <bburg at apple.com> ---
For posterity, this is how I was able to find the regression:
-----
How I figured out the addToKillRing regression:
* unused parameter 'append', where did it come from?
* Initially searched commit logs for addToKillRing, too much unrelated refactoring.
* Used `git blame`, too many unrelated refactorings. Went to Google to find something that can search changes to a specific line rather than just the last line.
* found out about git pickaxe `git log -S "text"` which searches for increment or decrement to count of "text" occurences in a file because of a diff. This led me to a commit where addToKillRing was moved to a different directory in a massive reorg.
$ git log -p --oneline -S "addToKillRing" Source/WebCore/editing/ | grep -C5 addToKillRing
* found out about git pickaxe variant `git log -G "regex" which searches for any match to regex in diffs. This would let me find changes to the line that both include addToKillRing.
$ git log -p --oneline -G "addToKillRing\\(" WebCore | grep -C5 --null addToKillRing
* Looked for earliest result to see if it was regressed there. It was not.
* Earliest result is another refactor that changed call signature and name (from ObjC to C++). I continued searching for the ObjC function name.
$ git log -p --oneline -G "_deleteRange:" -- WebKit
* Narrow down just to the relevant arguments
$ git log --oneline -G "killRing:YES prepend:" -- WebKit
* Manually check the newest and oldest revision. The oldest (initial implementation) was correct.
* Start checking commits one-by-one from oldest to newest, found the regression after a few revisions. The trac revision is listed in the commit message after 'git-svn-id'.
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20151116/77e2a1e5/attachment.html>
More information about the webkit-unassigned
mailing list