From Bugzilla Helper: User-Agent: Mozilla/5.0 (Macintosh; N; PPC; en-US; m18) Gecko/20000929 Netscape6/6.0b3 BuildID: 2000092911 Netscape 6 doesn't call NPP_UrlNotify() when a stream requested with NPN_GetUrlNotify() completes Reproducible: Always Steps to Reproduce: his is a Netscape 6 bug. When a plugin requests a stream using NPN_GetUrlNotify(), the browser is supposed to invoked NPP_UrlNotify() when the stream is complete. There are two primary cases, the browser sent NPP_NewStream() to the plugin, in which case NPP_DestroyStream() will happen and we don't really care (as we do redundant work in NPP_DestroyStream and NPP_UrlNotify). But if there was a problem with the stream, so NPP_NewStream() is not sent, NPP_UrlNotify() is the only way know to stop waiting for the stream. Actual Results: Expected Results:
Kelly, Meridith -- To help us triage: 1) what is the user experience when this problem happens? 2) does it ever cause a crash? 3) is there Shockwave functionality that doesn't work as a result? if so, what? 4) among Shockwave content, how widespread is content that will trigger this bug? 5) is there a workaround? 6) could MM provide an engineering resource to implement a fix? Thanks for the report, and please let us know ASAP. Thanks!
Confirming and marking Future and [rtm-] based on comments received by email from Macromedia. (Will paste those in here when I verify that the info isn't MM confidential.) This doesn't hurt Shockwave hardly at all although it could impact plug-ins based on the NS 3.0 Plug-in API. If we get evidence of unacceptable impact on other high-priority plug-ins in time for RTM, we'll re-evaluate.
Plugin API issues are a bit over my head, but this sounds very much like its related to a problem I have had. I have a shockwave game that works just fine in Nestscape 4.x IE 4.x, 5.x and even Opera 3.x, but in Mozilla, it gets stuck right after the loading sequence. (Id give you the URL, but the game is kinda proprietary, so until I get permission, or have enough spare time to write a test case, a description will have to do.) This shockwave game loads its first frame, and then waits until the entire .DCR file has ben downloaded before proceeding. Its progress meter shows the download is working, but when it reaches 100 percent, it stops, and the "Loading" caption fails to turn into a "Its ready!" button. If Mozilla is failing to notify the plugin that the stream has finished, I can easyly see something like this happening. If I can come up with a good example file, Ill post it for ya.
Nominating nsbeta1 based on (1) the higher degree of backward compatibility with plug-ins we're trying to achieve for nsbeta1 than we had for RTM, and (2) above user report of a possible example of where this is actually causing trouble. However, Andrei, if you run out of time, this is a lower priority than the other plug-in bugs for which we have confirmed examples of user impact. Fix this one last unless when get positive confirmation of cases where this causes harm.
I think I may be able to fix this, but I need a testcase. MozillaUser, can you attach a testcase?
hmm, perhaps not. I just re-tested (with build 2001012404) the proprietary game that I had the problem with earlier, and it no longer has any problems. So either I was mistaken in my guess that my problem was caused by this bug, or someone else has fixed this as as part of some other bug :P Sorry I cant be more helpful. I suppose you will have to ask firstname.lastname@example.org
I cannot test this without a testcase..any ideas anyone if this is still happening or is it fixed? Thx!
Increasing priority as there are many newsgroup posts about this bug.
Sounds up my alley
Peter, are we shooting for a milestone sooner than Future? (current value) Adding nomination to mozilla0.9.1. Can any of the newsgroup posters supply a testcase?
Eric, Are you back? I quickly looked at the code and it looks fine. We could possibly up to 0.9.1 if there was a solid testcase attached to verify I actually fixed the problem.
I'm back from my sabbatical in Europe, have been with Zodiac Networks since 2/14, not back at Netscape in the sense of being on the payroll, but still involved with mozilla.org & interested in polishing off the technologies I used to manage.
Erik, macromedia doesn't have a test case for this. I noticed this last fall when stepping in the debugger, and although it doesn't matter to shockwave, I felt it was a pretty serious compatibility bug, so I filed it (through Kelly).
Thanks Peter. Could you give us more background on why you felt this was a potentially serious issue? (e.g. Do you know of other plug-ins that would be affected, or can you suggest where we might get a testcase?) Thanks for your help!
As for this bug, we decided a while ago that this isn't a must fix for us. Reason being, for a properly set up website, this functionality is never used. It is part of our error handling for bad urls, and without it will cause shockwave to wait indefinately for streams to connect instead of terminating them when the browser notifies us that a stream is not coming. Thus, this bug can be closed.
ooh! Meredith's comments are very helpful. I have something now that I *think* is a test case that proves this bug has already been fixed. http://hamsterrepublic.com/tmp/moztest-56311.html is a sample shockwave pre-loader. When you run it, it is going to ask for permission to access http://not-a-real-domain.org/not-a-real-file.gif . grant it permission While the hamster runs, the loader will load two game files, and then a 1 megabyte ZIP file (just to make the progress meter take long enough for you to see) and finally it will request the nonexistant file http://not-a-real-domain.org/not-a-real-file.gif After all the files have been downloaded, the "Loading.." text is replaced by "Its ready! Click Here!". If Mozilla was failing to notify the plugin that the file request had failed, then that button would appear-- but it does! If the original .DIR source file for this example would helpful in verifying or debunking the validity of my testcase, I would be happy to mail it to someone, but I prefer not to post it
MozillaUser: Am I correct in thinking that you meant to write: "If Mozilla was failing to notify the plugin that the file request had failed, then that button would *NOT* appear-- but it does!" (*NOT* added) Many thanks for your testing!
Ah, yes. absolutely. I was _thinking_ "would not appear" but I _wrote_ "would appear". just filed bug 99999999 "Buzilla is unable to read my mind" with blocker severity to track that issue.
This bug seems a major problem for Business Objects in order to support Netscape 6.2+ and Mozilla with their software package. Adding me in CC field.
Tristan, do you have a testcase setup to show the problem? Thanks!
PeterL : I have asked Business Objects to provide one. We should also set up a concall soon to discuss the issue, with you or Patrick Beard.
I have a few dups of this bug but looking at the source, it's hard to determine the code path that would NOT cause a NPP_UrlNotify(). This is why I really need a testcase. Nominating for mozilla1.0
The test case should be provided in this bug or in bug 112399 . Adding CC email@example.com Jacques : could you please provide us with a test case you can upload in here (see "create a new attachment" link).
--->over to Andrei, do you remember what were the conditions to trigger this bug?
Is is about ns4xPluginInstance.cpp line 223? We call NPP_NewStream here and if some error happens, just returning with error from ns4xPluginStreamListener::OnStartBinding(). Should we call NPP_UrlNotify() here (line 233 - 234)? (Well, I'm just speculating here, due to lack of testcase)
will this be fixed by the patch in bug 127259?
Maybe fixed... Does anyone at Macromedia have a testcase to verify this bug gets fixed?
Jacques : could you please download Mozilla 1.0RC1 and check on you configuration if the bug is fixed ?
Note: This has probably only been fixed for NULL targets. There is another bug about fixing this for non-NULL targets.
moving back to 1.0.1
drats, meant 1.1
*** Bug 112399 has been marked as a duplicate of this bug. ***
*** This bug has been marked as a duplicate of 117766 *** *** This bug has been marked as a duplicate of 117766 ***