comparison rlgwebd.js @ 84:d59dc5cef412

rlgwebd.js: set the width and height on Player objects. Fixes the client not being informed of the pty size.
author John "Elwin" Edwards <elwin@sdf.org>
date Sun, 08 Jul 2012 08:40:08 -0700
parents e4773ac5d4d5
children 4303d94d87a2
comparison
equal deleted inserted replaced
83:e04c8bf6d4da 84:d59dc5cef412
110 childenv[key] = process.env[key]; 110 childenv[key] = process.env[key];
111 } 111 }
112 childenv["PTYHELPER"] = String(this.h) + "x" + String(this.w); 112 childenv["PTYHELPER"] = String(this.h) + "x" + String(this.w);
113 args = [this.game.path, "-n", this.pname]; 113 args = [this.game.path, "-n", this.pname];
114 this.child = child_process.spawn("/bin/ptyhelper", args, {"env": childenv}); 114 this.child = child_process.spawn("/bin/ptyhelper", args, {"env": childenv});
115 this.emit('open', true); 115 this.emit('open', true, this.sessid);
116 /* Set up the lockfile and ttyrec */ 116 /* Set up the lockfile and ttyrec */
117 var ts = timestamp(); 117 var ts = timestamp();
118 var progressdir = "/dgldir/inprogress-" + this.game.uname; 118 var progressdir = "/dgldir/inprogress-" + this.game.uname;
119 this.lock = path.join(progressdir, this.pname + ":node:" + ts + ".ttyrec"); 119 this.lock = path.join(progressdir, this.pname + ":node:" + ts + ".ttyrec");
120 var lmsg = this.child.pid.toString() + '\n' + this.w + '\n' + this.h + '\n'; 120 var lmsg = this.child.pid.toString() + '\n' + this.w + '\n' + this.h + '\n';
309 }; 309 };
310 this.quit = function() { 310 this.quit = function() {
311 if (this.alive) 311 if (this.alive)
312 this.session.close(); 312 this.session.close();
313 }; 313 };
314 function openH(success) { 314 function openH(success, id) {
315 if (success) { 315 if (success) {
316 ss.alive = true; 316 ss.alive = true;
317 ss.session = sessions[id];
318 ss.h = sessions[id].h;
319 ss.w = sessions[id].w;
317 } 320 }
318 callback(ss, success); 321 callback(ss, success);
319 } 322 }
320 function dataH(chunk) { 323 function dataH(chunk) {
321 var reply = {}; 324 var reply = {};