aboutsummaryrefslogtreecommitdiff
path: root/internal/basecomponent
diff options
context:
space:
mode:
authorKegsay <kegan@matrix.org>2020-06-04 11:18:08 +0100
committerGitHub <noreply@github.com>2020-06-04 11:18:08 +0100
commite7d1ac84c32a10f8deb7bcfc94531386312179c7 (patch)
treecfb8176ebcd9cd1087aa1c34f6f362dd2851dcdc /internal/basecomponent
parentd4f9a4bb97c0c66963d7fd9c1395614a2198112e (diff)
Add ParseFileURI and use it when dealing with file URIs (#1088)
* Add ParseFileURI and use it when dealing with file URIs Fixes #1059 * Missing file * Linting
Diffstat (limited to 'internal/basecomponent')
-rw-r--r--internal/basecomponent/base.go9
1 files changed, 3 insertions, 6 deletions
diff --git a/internal/basecomponent/base.go b/internal/basecomponent/base.go
index beaf0e86..42d236f8 100644
--- a/internal/basecomponent/base.go
+++ b/internal/basecomponent/base.go
@@ -277,12 +277,9 @@ func setupNaffka(cfg *config.Dendrite) (sarama.Consumer, sarama.SyncProducer) {
uri, err := url.Parse(string(cfg.Database.Naffka))
if err != nil || uri.Scheme == "file" {
var cs string
- if uri.Opaque != "" { // file:filename.db
- cs = uri.Opaque
- } else if uri.Path != "" { // file:///path/to/filename.db
- cs = uri.Path
- } else {
- logrus.Panic("file uri has no filename")
+ cs, err = sqlutil.ParseFileURI(string(cfg.Database.Naffka))
+ if err != nil {
+ logrus.WithError(err).Panic("Failed to parse naffka database file URI")
}
db, err = sqlutil.Open(internal.SQLiteDriverName(), cs, nil)
if err != nil {