Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f90cf628e3 |
17
util.go
17
util.go
@@ -16,11 +16,12 @@ import (
|
|||||||
|
|
||||||
var Debug = false
|
var Debug = false
|
||||||
var Tor = false
|
var Tor = false
|
||||||
|
var Socks5Address = "127.0.0.1:9050"
|
||||||
var DownThreads = 8
|
var DownThreads = 8
|
||||||
|
|
||||||
func getHttpClient() (*http.Client, error) {
|
func getHttpClient() (*http.Client, error) {
|
||||||
if Tor {
|
if Tor {
|
||||||
dialer, err := proxy.SOCKS5("tcp", "127.0.0.1:9050", nil, proxy.Direct)
|
dialer, err := proxy.SOCKS5("tcp", Socks5Address, nil, proxy.Direct)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@@ -120,8 +121,8 @@ func Download(manifest Manifest, downloadDir string, filen string) ([]byte, erro
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
remContent = content
|
remContent = *content
|
||||||
downloaded += len(content)
|
downloaded += len(*content)
|
||||||
|
|
||||||
if Debug {
|
if Debug {
|
||||||
// save remainder to file in the fragments/ directory, prefix with gap
|
// save remainder to file in the fragments/ directory, prefix with gap
|
||||||
@@ -159,10 +160,10 @@ func Download(manifest Manifest, downloadDir string, filen string) ([]byte, erro
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
mu.Lock()
|
mu.Lock()
|
||||||
downloaded += len(content) * len(fragment.Offsets)
|
downloaded += len(*content) * len(fragment.Offsets)
|
||||||
for _, offset := range fragment.Offsets {
|
for _, offset := range fragment.Offsets {
|
||||||
trackFrag = append(trackFrag, Frag{Offset: offset, Size: len(content)})
|
trackFrag = append(trackFrag, Frag{Offset: offset, Size: len(*content)})
|
||||||
copy(ret[offset:offset+len(content)], content)
|
copy(ret[offset:offset+len(*content)], *content)
|
||||||
}
|
}
|
||||||
percent := float32(downloaded) / float32(manifest.Size) * 100.0
|
percent := float32(downloaded) / float32(manifest.Size) * 100.0
|
||||||
downedMB := float32(downloaded) / 1024.0 / 1024.0
|
downedMB := float32(downloaded) / 1024.0 / 1024.0
|
||||||
@@ -221,7 +222,7 @@ func Download(manifest Manifest, downloadDir string, filen string) ([]byte, erro
|
|||||||
return ret, nil
|
return ret, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func getContent(url string) ([]byte, error) {
|
func getContent(url string) (*[]byte, error) {
|
||||||
client, err := getHttpClient()
|
client, err := getHttpClient()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
@@ -241,7 +242,7 @@ func getContent(url string) ([]byte, error) {
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
return body, nil
|
return &body, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func transformShaToURL(sha512s string, size int) string {
|
func transformShaToURL(sha512s string, size int) string {
|
||||||
|
|||||||
Reference in New Issue
Block a user