Skip to content

Commit 43d5608

Browse files
committed
fix(operate) abort
1 parent d7c33c4 commit 43d5608

File tree

1 file changed

+9
-19
lines changed

1 file changed

+9
-19
lines changed

server/operate.js

Lines changed: 9 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,13 @@ function getOperation(type) {
4848
function operate(type, id, socket, from, to, files) {
4949
const operate = getOperation(type);
5050
const operator = operate(from, to, files);
51-
const pause = () => operator.pause();
51+
const onPause = () => operator.pause();
52+
const onContinue = () => operator.continue();
53+
const onAbort = () => operator.abort();
5254

53-
socket.on(`${id}#pause`, pause);
55+
socket.on(`${id}#continue`, onContinue);
56+
socket.on(`${id}#abort`, onAbort);
57+
socket.on(`${id}#pause`, onPause);
5458

5559
operator.on('file', (name) => {
5660
socket.emit(`${id}#file`, name);
@@ -62,29 +66,15 @@ function operate(type, id, socket, from, to, files) {
6266

6367
operator.on('error', (error, name) => {
6468
const msg = `${error.code}: ${error.path}`;
65-
const rmListeners = () => {
66-
socket.removeListener(`${id}#continue`, onContinue);
67-
socket.removeListener(`${id}#abort`, onAbort);
68-
};
69-
70-
const onAbort = () => {
71-
operator.abort();
72-
rmListeners();
73-
};
74-
75-
const onContinue = () => {
76-
operator.continue();
77-
rmListeners();
78-
};
7969

8070
socket.emit(`${id}#error`, msg, name);
81-
socket.on(`${id}#continue`, onContinue);
82-
socket.on(`${id}#abort`, onAbort);
8371
});
8472

8573
operator.on('end', () => {
8674
socket.emit(`${id}#end`);
87-
socket.removeListener(`${id}#pause`, pause);
75+
socket.removeListener(`${id}#pause`, onPause);
76+
socket.removeListener(`${id}#continue`, onContinue);
77+
socket.removeListener(`${id}#abort`, onAbort);
8878
});
8979
}
9080

0 commit comments

Comments
 (0)