Merge branch '0.0.9-alpha' of github.com:NuSkooler/enigma-bbs into 0.0.10-alpha
This commit is contained in:
commit
826e5fc0f1
|
@ -84,6 +84,22 @@ exports.getModule = class AbracadabraModule extends MenuModule {
|
||||||
* Font support ala all other menus... or does this just work?
|
* Font support ala all other menus... or does this just work?
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
incrementActiveDoorNodeInstances() {
|
||||||
|
if(activeDoorNodeInstances[this.config.name]) {
|
||||||
|
activeDoorNodeInstances[this.config.name] += 1;
|
||||||
|
} else {
|
||||||
|
activeDoorNodeInstances[this.config.name] = 1;
|
||||||
|
}
|
||||||
|
this.activeDoorInstancesIncremented = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
decrementActiveDoorNodeInstances() {
|
||||||
|
if(true === this.activeDoorInstancesIncremented) {
|
||||||
|
activeDoorNodeInstances[this.config.name] -= 1;
|
||||||
|
this.activeDoorInstancesIncremented = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
initSequence() {
|
initSequence() {
|
||||||
const self = this;
|
const self = this;
|
||||||
|
|
||||||
|
@ -116,14 +132,8 @@ exports.getModule = class AbracadabraModule extends MenuModule {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// :TODO: JS elegant way to do this?
|
self.incrementActiveDoorNodeInstances();
|
||||||
if(activeDoorNodeInstances[self.config.name]) {
|
return callback(null);
|
||||||
activeDoorNodeInstances[self.config.name] += 1;
|
|
||||||
} else {
|
|
||||||
activeDoorNodeInstances[self.config.name] = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
callback(null);
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
function prepareDoor(callback) {
|
function prepareDoor(callback) {
|
||||||
|
@ -169,6 +179,13 @@ exports.getModule = class AbracadabraModule extends MenuModule {
|
||||||
|
|
||||||
this.doorInstance.run(exeInfo, () => {
|
this.doorInstance.run(exeInfo, () => {
|
||||||
trackDoorRunEnd(doorTracking);
|
trackDoorRunEnd(doorTracking);
|
||||||
|
this.decrementActiveDoorNodeInstances();
|
||||||
|
|
||||||
|
// client may have disconnected while process was active -
|
||||||
|
// we're done here if so.
|
||||||
|
if(!this.client.term.output) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Try to clean up various settings such as scroll regions that may
|
// Try to clean up various settings such as scroll regions that may
|
||||||
|
@ -188,9 +205,7 @@ exports.getModule = class AbracadabraModule extends MenuModule {
|
||||||
|
|
||||||
leave() {
|
leave() {
|
||||||
super.leave();
|
super.leave();
|
||||||
if(!this.lastError) {
|
this.decrementActiveDoorNodeInstances();
|
||||||
activeDoorNodeInstances[this.config.name] -= 1;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
finishedLoading() {
|
finishedLoading() {
|
||||||
|
|
|
@ -40,6 +40,10 @@ module.exports = class LoginServerModule extends ServerModule {
|
||||||
}
|
}
|
||||||
|
|
||||||
handleNewClient(client, clientSock, modInfo) {
|
handleNewClient(client, clientSock, modInfo) {
|
||||||
|
clientSock.on('error', err => {
|
||||||
|
logger.log.warn({ modInfo, error : err.message }, 'Client socket error');
|
||||||
|
});
|
||||||
|
|
||||||
//
|
//
|
||||||
// Start tracking the client. A session ID aka client ID
|
// Start tracking the client. A session ID aka client ID
|
||||||
// will be established in addNewClient() below.
|
// will be established in addNewClient() below.
|
||||||
|
@ -68,7 +72,7 @@ module.exports = class LoginServerModule extends ServerModule {
|
||||||
});
|
});
|
||||||
|
|
||||||
client.on('error', err => {
|
client.on('error', err => {
|
||||||
logger.log.info({ clientId : client.session.id }, 'Connection error: %s' % err.message);
|
logger.log.info({ clientId : client.session.id, error : err.message }, 'Connection error');
|
||||||
});
|
});
|
||||||
|
|
||||||
client.on('close', err => {
|
client.on('close', err => {
|
||||||
|
|
Loading…
Reference in New Issue