Summary: | LEAK when rapidly closing multiple tabs while they are still loading content | ||
---|---|---|---|
Product: | WebKit | Reporter: | Dylan <dylanryan> |
Component: | New Bugs | Assignee: | Nobody <webkit-unassigned> |
Status: | UNCONFIRMED --- | ||
Severity: | Normal | ||
Priority: | P2 | ||
Version: | 525.x (Safari 3.1) | ||
Hardware: | Mac | ||
OS: | OS X 10.5 |
Description
Dylan
2008-06-26 21:19:28 PDT
If you follow your steps, then open a new window, wait a few moments, then close it do you see another leak dialog? (In reply to comment #1) > If you follow your steps, then open a new window, wait a few moments, then > close it do you see another leak dialog? > Not right now, I don't. I know I have seen that before fairly recently (within the week), but I'll be honest I usually just quit Safari (or WebKit if I am using a nightly) and launch it again when I see when of those messages, so I am not sure when exactly. I just tried several times in both r34822, r34824, and shipping 3.1.1 and could not get it to come up on the next window (i tried both letting the new window's page load fully or cutting it off before it loaded). If I see that happen in the near future, I'll be sure to note it here. (In reply to comment #2) > (In reply to comment #1) > > If you follow your steps, then open a new window, wait a few moments, then > > close it do you see another leak dialog? > > > > Not right now, I don't. Open mouth, insert foot. In an attempt to test it "one more time, just in case", I did get it to come up for the next (and all subsequent) window(s) opened in r34824 this time, the leak is 1 WebFrame object. If you close tabs rapidly then the leak detection timer can fire before all the relevant cleanup has completed, leading to many false positives. I believe that is what you are seeing based on the steps that you describe. To verify that it is a legitimate leak you need to pause for five or ten seconds, open a blank window, close it, and wait to see if you see another dialog. If you can reproduce a leak after following these extra steps, please let me know. (In reply to comment #4) > If you close tabs rapidly then the leak detection timer can fire before all the > relevant cleanup has completed, leading to many false positives. I believe > that is what you are seeing based on the steps that you describe. To verify > that it is a legitimate leak you need to pause for five or ten seconds, open a > blank window, close it, and wait to see if you see another dialog. If you can > reproduce a leak after following these extra steps, please let me know. > More testing, and I can't get it to happen. i guess I am hitting this, then. Would it be possible to make the timer on the leak check wait a little longer to lessen the amount of this and similar false positives (i just tested rapidly Cmd-N, Cmd-W-ing over and over and got a similar message)? Or would it have to be lengthened to such a degree that the dialog would no longer open more or less at the same time as the window closes? It is just annoying because the dialogs prevent Safari/WebKit from doing ANYTHING until they are all dismissed (like a javascript alert() dialog), and since i get 5 to 10 of them opened back to back, it makes it annoying to get rid of them all just so that I can open a new window. Maybe could the leaks dialog be made into a simple HTML document loaded in a borderless/chromeless standard webkit window, so that it doesn't prevent the program from responding? or is that getting into the Safari chrome and not the webkit guts? The alert only appears if you have explicitly turned on "Always Check for World Leaks" in Safari's "Debug" menu. If you're not interested in them, feel free to turn it back off. |