Bugzilla – Bug 2505
Web error: There is no ":" skin, try http://server:9000/ instead.
Last modified: 2009-09-08 09:26:43 UTC
While the server is rescanning, the current playlist frame shows the following error only in Safari: 404 Not Found: There is no ":" skin, try http://server:9000/ instead. (where "server" is actually the server name in the requested url) My Safari version is 2.0.2 (416.12). This problem does not occur in IE or Firefox from either MacOS or Windows XP. The server itself is running on Windows XP.
Which skin are you using? Default and fishbone seem ok, but I only have access to safari 1.3
Default skin. I haven't tried others. When it does happen, it keeps happening even after the server has completed its rescan until I quit and restart Safari (and not just dump it's cache). In fact when I just reproduced it again this time the upper left frame gives the error: 404 Not Found: setup.html Try adding page=server. While this points to a Safari error, it's curious that it is only triggered during a rescan.
I have seen this error before, but haven't been able to reproduce it. I don't think it's specific to rescanning and I've seen it in Omniweb too. If you can reproduce it, Paul, can you run the server with the d_http debugging flag turned on and then trigger the bug? The log output would probably be very revealing.
Created attachment 996 [details] d_http output
Hm, the log indicates that the bogus URL is in the request: GET HTTP/1.1 /:///&d=1131338871674 I can see this get created in common.js: var plloc = top.frames.playlist.location; var newloc = plloc.protocol + '//' + plloc.host + plloc.pathname + plloc.search.replace(/&d=\d+/, '') + '&d=' + new Date().getTime() + plloc.hash; plloc.replace(newloc); which implies that the top.frames.playlist.location might be bogus in some way, possibly due to Safari or could be in the source. Speculation at this point, since I can't reproduce it, but somebody who knows more about that script might have some insight. KDF? Also, Paul, can you reproduce this in Firefox, if you have that installed?
Firefox I have installed on XP. Cannot reproduce it using that browser, nor can I using IE.
I think this script came from jacob, to add some sort of timestamp to the playlist url so that safari would actually refresh when the status pane refreshed
jacob: do you have an idea of what's going on here with safari?
I think I found it... There was a race condition such that if the onLoad() function fires before Safari fills in the frame location data, the location would be read as null; the check against that was looking at the wrong value. This would be more likely to happen during rescanning, when the server is slow in general. I caught Safari returning an empty location object, but didn't see it actually redirecting to the invalid URL; change 5138 should fix things.
I've also merged this into the 6.2.x branch for tonight's nightly build. Please give that a shot and reopen the bug if you can reproduce the problem.