mirror of
https://github.com/tsl0922/ttyd.git
synced 2025-12-24 20:54:21 +01:00
html: release ObjectURL on dispose
This commit is contained in:
@@ -318,17 +318,15 @@ export class Xterm {
|
||||
private applyPreferences(prefs: Preferences) {
|
||||
const { terminal, fitAddon, register } = this;
|
||||
if (prefs.enableZmodem || prefs.enableTrzsz) {
|
||||
this.zmodemAddon = register(
|
||||
new ZmodemAddon({
|
||||
zmodem: prefs.enableZmodem,
|
||||
trzsz: prefs.enableTrzsz,
|
||||
onSend: this.sendCb,
|
||||
sender: this.sendData,
|
||||
writer: this.writeData,
|
||||
})
|
||||
);
|
||||
this.zmodemAddon = new ZmodemAddon({
|
||||
zmodem: prefs.enableZmodem,
|
||||
trzsz: prefs.enableTrzsz,
|
||||
onSend: this.sendCb,
|
||||
sender: this.sendData,
|
||||
writer: this.writeData,
|
||||
});
|
||||
this.writeFunc = data => this.zmodemAddon?.consume(data);
|
||||
terminal.loadAddon(this.zmodemAddon);
|
||||
terminal.loadAddon(register(this.zmodemAddon));
|
||||
}
|
||||
Object.keys(prefs).forEach(key => {
|
||||
const value = prefs[key];
|
||||
@@ -366,7 +364,8 @@ export class Xterm {
|
||||
const imageWorkerUrl = window.URL.createObjectURL(
|
||||
new Blob([worker], { type: 'text/javascript' })
|
||||
);
|
||||
terminal.loadAddon(new ImageAddon(imageWorkerUrl));
|
||||
register(toDisposable(() => window.URL.revokeObjectURL(imageWorkerUrl)));
|
||||
terminal.loadAddon(register(new ImageAddon(imageWorkerUrl)));
|
||||
console.log('[ttyd] Sixel enabled');
|
||||
}
|
||||
break;
|
||||
|
||||
26382
src/html.h
generated
26382
src/html.h
generated
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user