diff options
| author | Shulhan <ms@kilabit.info> | 2024-05-12 14:33:07 +0700 |
|---|---|---|
| committer | Shulhan <ms@kilabit.info> | 2024-05-12 14:33:07 +0700 |
| commit | d5542dc8956c5d084817b60ed7451870c7175865 (patch) | |
| tree | f0aa5ce816db3a06debf065af91562efc564453d | |
| parent | d71ceabc9c65014be2de9877e351b952231a49e3 (diff) | |
| download | ciigo-d5542dc8956c5d084817b60ed7451870c7175865.tar.xz | |
all: initialize memfs using New
When memfs not initialized using New, the [memfs.MemFS.PathNodes] will
be nil.
This cause any Get on new file will return 404.
| -rw-r--r-- | server.go | 19 |
1 files changed, 11 insertions, 8 deletions
@@ -31,17 +31,20 @@ func newServer(opts *ServeOptions) (srv *server, err error) { var logp = `newServer` if opts.Mfs == nil { - opts.Mfs = &memfs.MemFS{ - Opts: &memfs.Options{ - Root: opts.Root, - Excludes: defExcludes, - }, - } opts.IsDevelopment = true + var mfsopts = &memfs.Options{ + Root: opts.Root, + Excludes: defExcludes, + TryDirect: true, + } + opts.Mfs, err = memfs.New(mfsopts) + if err != nil { + return nil, fmt.Errorf(`%s: %w`, logp, err) + } + } else { + opts.Mfs.Opts.TryDirect = opts.IsDevelopment } - opts.Mfs.Opts.TryDirect = opts.IsDevelopment - srv = &server{ opts: *opts, } |
