]> Sergey Matveev's repositories - btrtrc.git/commitdiff
Some fixes and improvements to dirwatch
authorMatt Joiner <anacrolix@gmail.com>
Wed, 27 Aug 2014 22:05:06 +0000 (08:05 +1000)
committerMatt Joiner <anacrolix@gmail.com>
Wed, 27 Aug 2014 22:05:06 +0000 (08:05 +1000)
util/dirwatch/dirwatch.go

index afc7653d76c66c99aba70459d9d7f2b697826e20..1e857e1ad6ce2510ffbc4270d2389a6af84c4187 100644 (file)
@@ -90,7 +90,7 @@ func scanDir(dirName string) (ee map[torrent.InfoHash]entity) {
        addEntity := func(e entity) {
                e0, ok := ee[e.InfoHash]
                if ok {
-                       if e0.MagnetURI != "" && len(e.MagnetURI) < len(e0.MagnetURI) {
+                       if e0.MagnetURI == "" || len(e.MagnetURI) < len(e0.MagnetURI) {
                                return
                        }
                }
@@ -107,7 +107,7 @@ func scanDir(dirName string) (ee map[torrent.InfoHash]entity) {
                        e := entity{
                                TorrentFilePath: fullName,
                        }
-                       util.CopyExact(e.InfoHash, ih)
+                       util.CopyExact(&e.InfoHash, ih)
                        addEntity(e)
                case ".magnet":
                        uris, err := magnetFileURIs(fullName)
@@ -138,6 +138,7 @@ func magnetFileURIs(name string) (uris []string, err error) {
        }
        defer f.Close()
        scanner := bufio.NewScanner(f)
+       scanner.Split(bufio.ScanWords)
        for scanner.Scan() {
                uris = append(uris, scanner.Text())
        }