diff --git a/lib/seneca.js b/lib/seneca.js
index <HASH>..<HASH> 100644
--- a/lib/seneca.js
+++ b/lib/seneca.js
@@ -1587,8 +1587,13 @@ function make_seneca(initial_options ) {
         args.strargs ? jsonic( args.strargs ) : {}
       )
 
-      var fn = args.fn
-      if( !fn ) {
+      var fn
+      if( args.fn ) {
+        fn = function(data,done){
+          return args.fn.call(self,data,done)
+        }
+      }
+      else {
         fn = function(data,done){
 
           if( args.strargs ) {
set context to self for zig functions