la fonction échoue jamais appelée si l'utilisateur refuse de partager la géolocalisation dans firefox

J'ai donc ce code javascript. Dans safari et chrome, si l'utilisateur refuse de partager la localisation, il va à l'échec de la fonction comme il se doit; toutefois, dans Firefox, il ne le fait pas.

Toute aide appréciée.

function initGeolocation()
{
    if( navigator.geolocation )
    {          
          //Call getCurrentPosition with success and failure callbacks
          navigator.geolocation.getCurrentPosition( success, fail );
    }
    else
    {
          alert("Sorry, your browser does not support geolocation services.");
    }
}

 var map;
 function success(position)
 {

     var longIDText = document.getElementById('longID');
     var latIDText = document.getElementById('latID');
     longIDText.value = position.coords.longitude;
     latIDText.value = position.coords.latitude;
     document.getElementById('coordSubmitID').click();
  }

  function fail(error)
  {
          alert("FAAAAAAAAAAIIIIIIIIIL")
          var zip_code ;
          while (true){
              //Could not obtain location

              zip_code = prompt("Please enter your current address or zip code","");


              if ( zip_code == "" ) {
                  alert(zip_code +" is not a valid address. Please try again.");
              } 
              else{
                break;
              }
          }
          var zipIDText = document.getElementById('zipID');
          zipIDText.value = zip_code;
          document.getElementById('coordSubmitID').click();
  }
InformationsquelleAutor theRealWorld | 2011-05-10