The root cause is not clear, but the problem was traced to the following code:
    var returnURL = window.location;
    if ("" == returnURL.hash) {
        returnURL.hash = "icemobilesx";
It appears that window.location is being used by reference rather than value, so operating on the hash code causes a subsequent window.location change to fail.  The solution is to revert to an earlier implementation that was more verbose but functional:
    var returnURL = "" + window.location;
    if ("" == window.location.hash) {
        var lastHash = returnURL.lastIndexOf("#");
        if (lastHash > 0) 
{
            returnURL = returnURL.substring(0, lastHash);
        }
        returnURL += "#icemobilesx";
  
    
Assignee: Ted Goddard (was: Steve Maryka)
Resolution: Fixed