summaryrefslogtreecommitdiffstats
path: root/app/options.go
diff options
context:
space:
mode:
Diffstat (limited to 'app/options.go')
-rw-r--r--app/options.go8
1 files changed, 5 insertions, 3 deletions
diff --git a/app/options.go b/app/options.go
index 3058769d6..e5ac85706 100644
--- a/app/options.go
+++ b/app/options.go
@@ -12,7 +12,7 @@ type Option func(a *App)
// By default, the app will use the store specified by the configuration. This allows you to
// construct an app with a different store.
//
-// The storeOrFactory parameter must be either a store.Store or func() store.Store.
+// The storeOrFactory parameter must be either a store.Store or func(App) store.Store.
func StoreOverride(storeOrFactory interface{}) Option {
return func(a *App) {
switch s := storeOrFactory.(type) {
@@ -20,8 +20,10 @@ func StoreOverride(storeOrFactory interface{}) Option {
a.newStore = func() store.Store {
return s
}
- case func() store.Store:
- a.newStore = s
+ case func(*App) store.Store:
+ a.newStore = func() store.Store {
+ return s(a)
+ }
default:
panic("invalid StoreOverride")
}