While trying to make TypeRacer work on my server, I found out something that
looks like a bug.
In gadgets.IfrGadget.prototype.getMainContent, there is the line:
gadgets.rpc.setAuthToken(iframeId, this.rpcToken);
This function calls setupFrame, which, if the best available channel is
"fe", calls:
var frame = document.getElementById(frameId);
frame[FE_G2C_CHANNEL] = function(args) { ... }
However, the frame with that ID still does not exist - it is created only
later in getMainContent :
continuation('<div class="' + this.cssClassGadgetContent +
'"><iframe id="' + iframeId + ...")
I traced it using "sample2.html" and saw that there is really an exception
in setupFrame saying "frame has no properties",
but the exception is caught and ignored.
Please tell me if this is really a bug, or there is something I don't
understand?
(Note that the exception happens only on firefox < 3,
where the best available relay channel is FE).