aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2016-07-09 14:30:16 +0200
committerDimitri Sokolyuk <demon@dim13.org>2016-07-09 14:30:16 +0200
commitdff1ff318d9ccb7e1c7aac6f9f3f86b139f86b49 (patch)
treebc6a8ee523842a7cf0480dda9e9598287c593818
parentd74625dd5e370ccc5ab17a79a6860126dd715452 (diff)
Cleanup Open
-rw-r--r--meta/info.go13
1 files changed, 5 insertions, 8 deletions
diff --git a/meta/info.go b/meta/info.go
index fd670ce..b99fdd7 100644
--- a/meta/info.go
+++ b/meta/info.go
@@ -61,14 +61,11 @@ func (i Info) GetPieces() []Piece {
// Open N-th file and allocate required path on demand
func (i Info) Open(n int) (*os.File, error) {
- var p string
- var sz int
- if len(i.Files) == 0 {
- p = i.Name
- sz = i.Length
- } else {
- p = path.Join(i.Name, i.Files[n].Name())
- if err := os.MkdirAll(p, 0755); err != nil {
+ p := i.Name
+ sz := i.Length
+ if len(i.Files) > 0 {
+ p = path.Join(p, i.Files[n].Name())
+ if err := os.MkdirAll(path.Dir(p), 0755); err != nil {
return nil, err
}
sz = i.Files[n].Length