Compare commits

...

2 Commits

Author SHA1 Message Date
ed796e6d7f defer release resouce 2024-03-18 14:58:11 +08:00
389bbad65f 完善 2023-07-11 14:59:39 +08:00
2 changed files with 11 additions and 8 deletions

View File

@ -65,6 +65,7 @@ func fetch(u string) (r rss2.Item) {
return return
} }
dom, err := goquery.NewDocumentFromReader(res.Body) dom, err := goquery.NewDocumentFromReader(res.Body)
defer res.Body.Close()
if err != nil { if err != nil {
return return
} }
@ -104,6 +105,7 @@ func downAndSendMail(doc *goquery.Document, title string) {
if err != nil { if err != nil {
return return
} }
var fn []func()
for _, ss := range []string{".bbcle-download-extension-pdf", ".bbcle-download-extension-mp3"} { for _, ss := range []string{".bbcle-download-extension-pdf", ".bbcle-download-extension-mp3"} {
uu, ok := doc.Find(ss).Attr("href") uu, ok := doc.Find(ss).Attr("href")
if ok { if ok {
@ -116,6 +118,10 @@ func downAndSendMail(doc *goquery.Document, title string) {
if err != nil { if err != nil {
continue continue
} }
fn = append(fn, func() {
response.Body.Close()
file.Close()
})
_, err = io.Copy(file, response.Body) _, err = io.Copy(file, response.Body)
if err != nil { if err != nil {
continue continue
@ -123,6 +129,11 @@ func downAndSendMail(doc *goquery.Document, title string) {
mm.f = append(mm.f, name) mm.f = append(mm.f, name)
} }
} }
defer func() {
for _, f := range fn {
f()
}
}()
if len(mm.f) < 1 { if len(mm.f) < 1 {
return return
} }

View File

@ -38,14 +38,6 @@ func SendMail(subject string, content string, files ...string) error {
} }
cmd := exec.Command(cm, v...) cmd := exec.Command(cm, v...)
file, err := os.OpenFile("run.sh", os.O_CREATE|os.O_APPEND, 0755)
if err != nil {
return err
}
_, err = file.WriteString(cmd.String())
if err != nil {
return err
}
output, err := cmd.CombinedOutput() output, err := cmd.CombinedOutput()
log.Println(string(output)) log.Println(string(output))
return err return err