]> Sergey Matveev's repositories - btrtrc.git/commitdiff
torrentfs: Support torrents that don't yet have their metadata
authorMatt Joiner <anacrolix@gmail.com>
Wed, 23 Jul 2014 04:55:38 +0000 (14:55 +1000)
committerMatt Joiner <anacrolix@gmail.com>
Wed, 23 Jul 2014 04:55:38 +0000 (14:55 +1000)
fs/torrentfs.go

index 726b8fe58c188a19b9b0b814e6e418cd798069d0..d1c6732ceb212286cb1299910ff93aaa2c65487b 100644 (file)
@@ -174,7 +174,7 @@ func isSingleFileTorrent(md *metainfo.Info) bool {
 
 func (me rootNode) Lookup(name string, intr fusefs.Intr) (_node fusefs.Node, err fuse.Error) {
        for _, t := range me.fs.Client.Torrents() {
-               if t.Name() != name {
+               if t.Name() != name || t.Info == nil {
                        continue
                }
                __node := node{
@@ -198,6 +198,9 @@ func (me rootNode) Lookup(name string, intr fusefs.Intr) (_node fusefs.Node, err
 func (me rootNode) ReadDir(intr fusefs.Intr) (dirents []fuse.Dirent, err fuse.Error) {
        for _, _torrent := range me.fs.Client.Torrents() {
                metaInfo := _torrent.Info
+               if metaInfo == nil {
+                       continue
+               }
                dirents = append(dirents, fuse.Dirent{
                        Name: metaInfo.Name,
                        Type: func() fuse.DirentType {