diff --git a/package.json b/package.json
index 326ab960438dd9f628e1842e26ef72971ec147ba..d86bdc2eed49b21e79b75b8f917eb563c35d6e06 100644
--- a/package.json
+++ b/package.json
@@ -35,9 +35,9 @@
     "express": "^4.14.0"
   },
   "devDependencies": {
-    "eslint": "^3.12.1",
+    "eslint": "^3.12.2",
     "eslint-config-standard": "^6.2.1",
-    "eslint-plugin-promise": "^3.4.0",
-    "eslint-plugin-standard": "^2.0.1"
+    "eslint-plugin-promise": "github:xjamundx/eslint-plugin-promise",
+    "eslint-plugin-standard": "github:xjamundx/eslint-plugin-standard"
   }
 }
diff --git a/routes/freshclam.js b/routes/freshclam.js
index 02089238ec6743a6159c7348f5ce88830bb785e2..b1532842fcf6ac921608a433d389d607e5ef5e73 100644
--- a/routes/freshclam.js
+++ b/routes/freshclam.js
@@ -5,12 +5,7 @@ const freshClam = require('../lib/freshclam.js');
  * > GET /freshclam
  * Run freshclam to update the virus database.
  */
-module.exports = function* freshclam() {
-  freshClam().then(() => {
-    this.status = 200;
-  }).catch(err => {
-    console.error('failed to update virus definitions');
-    console.error(err);
-    this.status = 500;
-  });
-}
+module.exports = function* freshclam () {
+  yield freshClam();
+  this.status = 200;
+};