view options.js @ 148:bac9c3b01692

Check that the ttyrec stream has an fd before passing it to fstat. The stream might not have an fd, presumably if the open isn't complete. Calling fstat then causes crashes.
author John "Elwin" Edwards
date Mon, 06 Jan 2014 09:11:35 -0500
parents 99fbc7c55b81
children
line wrap: on
line source

function setup() {
  if (!("lcred" in sessionStorage)) {
    setstatus("You are not logged in.");
    return;
  }
  var url = "/uinfo/email?key=" + sessionStorage.getItem("lcred");
  var req = new XMLHttpRequest();
  req.onreadystatechange = function () {
    if (req.readyState != 4 || req.status != 200) 
      return;
    var reply = JSON.parse(req.responseText);
    if (!("email" in reply)) {
      setstatus("You are not logged in.");
    }
    else {
      setstatus("You are logged in as " + reply.u + ".");
      document.getElementById("input_email").value = reply["email"];
      //document.getElementById("switch").style.display = "block";
    }
  }
  req.open('GET', url, true);
  req.send();
}

function setstatus(stattext) {
  var statnode = document.createTextNode(stattext);
  var statdiv = document.getElementById("ostat");
  statdiv.replaceChild(statnode, statdiv.firstChild);
}

function postemail() {
  if (!("lcred" in sessionStorage))
    return;
  var posturl = "/uinfo/email?key=" + sessionStorage.getItem("lcred");
  var msg = {"v": document.getElementById("input_email").value};
  var req = new XMLHttpRequest();
  req.open('POST', posturl, true);
  req.send(JSON.stringify(msg));
}

function postpw() {
  if (!("lcred" in sessionStorage))
    return;
  var posturl = "/uinfo/pw?key=" + sessionStorage.getItem("lcred");
  var msg = {"v": document.getElementById("input_pw").value};
  var req = new XMLHttpRequest();
  req.open('POST', posturl, true);
  req.send(JSON.stringify(msg));
}