RESOLVED FIXED 66658
Chrome::setSelectedColorInColorChooser shouldn't be called when color chooser sets a new color
https://bugs.webkit.org/show_bug.cgi?id=66658
Summary Chrome::setSelectedColorInColorChooser shouldn't be called when color chooser...
Keishi Hattori
Reported 2011-08-22 03:31:18 PDT
Chrome::setSelectedColorInColorChooser is being called when the color chooser selects a color. This causes an infinite loop when the user changes the color very rapidly.
Attachments
patch (2.29 KB, patch)
2011-08-22 03:34 PDT, Keishi Hattori
no flags
Keishi Hattori
Comment 1 2011-08-22 03:34:23 PDT
Kent Tamura
Comment 2 2011-08-22 03:54:38 PDT
Comment on attachment 104658 [details] patch ok
WebKit Review Bot
Comment 3 2011-08-22 04:53:34 PDT
Comment on attachment 104658 [details] patch Clearing flags on attachment: 104658 Committed r93503: <http://trac.webkit.org/changeset/93503>
WebKit Review Bot
Comment 4 2011-08-22 04:53:38 PDT
All reviewed patches have been landed. Closing bug.
Darin Adler
Comment 5 2011-08-22 09:39:59 PDT
Normally this kind of change needs a regression test. Why no test in this case?
Keishi Hattori
Comment 6 2011-08-22 18:07:20 PDT
(In reply to comment #5) > Normally this kind of change needs a regression test. Why no test in this case? I can't write a layout test because I need to manipulate NSColorPanel for the problem to occur.
Darin Adler
Comment 7 2011-08-22 18:10:46 PDT
(In reply to comment #6) > I can't write a layout test because I need to manipulate NSColorPanel for the problem to occur. We can easily add a feature to DumpRenderTree to call the same function that the NSColorPanel would.
Keishi Hattori
Comment 8 2011-08-22 19:05:41 PDT
This is my first time looking at DumpRenderTree and I have a couple of questions. 1. The WebKit part of the patch hasn't landed yet (Bug 65889, Bug 65897). So if I were to do this right now, I need to call a WebCore method from DumpRenderTree. Would it be better to do this after the patches land. 2. This infinite loop only happens in Chromium. The "set to color chooser" and "set from color chooser" IPCs get intertwined causing the loop. The loop won't happen in WebKit because the calls are from a single thread and the NSColorPanel checks if the same color is being set. Could we use DumpRenderTree to test for this?
Kent Tamura
Comment 9 2011-08-22 19:24:11 PDT
(In reply to comment #8) > This is my first time looking at DumpRenderTree and I have a couple of questions. > > 1. The WebKit part of the patch hasn't landed yet (Bug 65889, Bug 65897). So if I were to do this right now, I need to call a WebCore method from DumpRenderTree. Would it be better to do this after the patches land. I think we had better introduce a mock color panel delegate object and inject it to Chrome or ChromeClient by window.internals; e.g. window.internals.useMockColorPanel().
Keishi Hattori
Comment 10 2011-08-23 07:45:38 PDT
Thanks darin, tkent. I think I have an idea how to test this now. I am working on it.
Note You need to log in before you can comment on or make changes to this bug.