in src/controllers/connectionManager.ts [533:555]
private handleConnectionResult(result: boolean, fileUri: string, connectionCreds: Interfaces.IConnectionCredentials): Promise<boolean> {
const self = this;
return new Promise<boolean>((resolve, reject) => {
let connection = self._connections[fileUri];
if (!result && connection && connection.loginFailed) {
self.connectionUI.createProfileWithDifferentCredentials(connectionCreds).then(newConnection => {
if (newConnection) {
self.connect(fileUri, newConnection).then(newResult => {
connection = self._connections[fileUri];
if (!newResult && connection && connection.loginFailed) {
Utils.showErrorMsg(Utils.formatString(LocalizedConstants.msgConnectionError, connection.errorNumber, connection.errorMessage));
}
resolve(newResult);
});
} else {
resolve(true);
}
});
} else {
resolve(true);
}
});
}