mirror of
https://github.com/arduino/arduino-ide.git
synced 2025-06-06 04:06:32 +00:00
ATL-318: Fixed monitor reconnection after upload
Signed-off-by: Akos Kitta <kittaakos@typefox.io>
This commit is contained in:
parent
696048b5d9
commit
528f4150d3
@ -1,4 +1,5 @@
|
|||||||
import { injectable, inject, postConstruct } from 'inversify';
|
import { injectable, inject, postConstruct } from 'inversify';
|
||||||
|
import { deepClone } from '@theia/core/lib/common/objects';
|
||||||
import { Emitter, Event } from '@theia/core/lib/common/event';
|
import { Emitter, Event } from '@theia/core/lib/common/event';
|
||||||
import { MessageService } from '@theia/core/lib/common/message-service';
|
import { MessageService } from '@theia/core/lib/common/message-service';
|
||||||
import { FrontendApplicationStateService } from '@theia/core/lib/browser/frontend-application-state';
|
import { FrontendApplicationStateService } from '@theia/core/lib/browser/frontend-application-state';
|
||||||
@ -182,15 +183,19 @@ export class MonitorConnection {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async disconnect(): Promise<Status> {
|
async disconnect(): Promise<Status> {
|
||||||
if (!this.state) { // XXX: we user `this.state` instead of `this.connected` to make the type checker happy.
|
if (!this.connected) {
|
||||||
|
return Status.OK;
|
||||||
|
}
|
||||||
|
const stateCopy = deepClone(this.state);
|
||||||
|
if (!stateCopy) {
|
||||||
return Status.OK;
|
return Status.OK;
|
||||||
}
|
}
|
||||||
console.log('>>> Disposing existing monitor connection...');
|
console.log('>>> Disposing existing monitor connection...');
|
||||||
const status = await this.monitorService.disconnect();
|
const status = await this.monitorService.disconnect();
|
||||||
if (Status.isOK(status)) {
|
if (Status.isOK(status)) {
|
||||||
console.log(`<<< Disposed connection. Was: ${MonitorConnection.State.toString(this.state)}`);
|
console.log(`<<< Disposed connection. Was: ${MonitorConnection.State.toString(stateCopy)}`);
|
||||||
} else {
|
} else {
|
||||||
console.warn(`<<< Could not dispose connection. Activate connection: ${MonitorConnection.State.toString(this.state)}`);
|
console.warn(`<<< Could not dispose connection. Activate connection: ${MonitorConnection.State.toString(stateCopy)}`);
|
||||||
}
|
}
|
||||||
this.state = undefined;
|
this.state = undefined;
|
||||||
this.onConnectionChangedEmitter.fire(this.state);
|
this.onConnectionChangedEmitter.fire(this.state);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user