Skip to content

Commit

Permalink
fix: daemon not killed when migrating app architecture (#1109)
Browse files Browse the repository at this point in the history
Add an option to kill running daemon when it's incompatible with the app version.
  • Loading branch information
IGassmann authored Mar 15, 2018
1 parent 98d7332 commit 7f7f09c
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 9 deletions.
8 changes: 3 additions & 5 deletions src/renderer/modal/modalIncompatibleDaemon/index.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
import React from 'react';
import { connect } from 'react-redux';
import { doQuit, doSkipWrongDaemonNotice } from 'redux/actions/app';
import { doQuit, doQuitAnyDaemon } from 'redux/actions/app';
import ModalIncompatibleDaemon from './view';

const select = state => ({});

const perform = dispatch => ({
quit: () => dispatch(doQuit()),
quitAnyDaemon: () => dispatch(doQuitAnyDaemon()),
});

export default connect(select, perform)(ModalIncompatibleDaemon);
export default connect(null, perform)(ModalIncompatibleDaemon);
10 changes: 6 additions & 4 deletions src/renderer/modal/modalIncompatibleDaemon/view.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,17 @@ import Link from 'component/link/index';

class ModalIncompatibleDaemon extends React.PureComponent {
render() {
const { quit } = this.props;
const { quit, quitAnyDaemon } = this.props;

return (
<Modal
isOpen
contentLabel={__('Incompatible daemon running')}
type="alert"
confirmButtonLabel={__('Quit')}
onConfirmed={quit}
type="confirm"
confirmButtonLabel={__('Quit daemon')}
abortButtonLabel={__('Do nothing')}
onConfirmed={quitAnyDaemon}
onAborted={quit}
>
{__(
'This browser is running with an incompatible version of the LBRY protocol and your install must be repaired. '
Expand Down
17 changes: 17 additions & 0 deletions src/renderer/redux/actions/app.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import { execSync } from 'child_process';
import isDev from 'electron-is-dev';
import Lbry from 'lbry';
import path from 'path';
Expand Down Expand Up @@ -329,6 +330,22 @@ export function doQuit() {
};
}

export function doQuitAnyDaemon() {
return dispatch => {
try {
if (process.platform === 'win32') {
execSync('taskkill /im lbrynet-daemon.exe /t /f');
} else {
execSync('pkill lbrynet-daemon');
}
} catch (error) {
dispatch(doAlertError(`Quitting daemon failed due to: ${error.message}`));
} finally {
dispatch(doQuit());
}
};
}

export function doChangeVolume(volume) {
return dispatch => {
dispatch({
Expand Down

0 comments on commit 7f7f09c

Please sign in to comment.