Merge pull request #12 from 30x/bundle_download_race

Release branch: fix bundle download race bug
diff --git a/bundle.go b/bundle.go
index 622c8ed..27511b7 100644
--- a/bundle.go
+++ b/bundle.go
@@ -321,10 +321,10 @@
 				if _, ok := err.(*timeoutError); ok {
 					continue
 				}
-				go func() {
-					req.backoffFunc()
-					w.bm.enqueueRequest(req)
-				}()
+				go func(r *DownloadRequest, bm *bundleManager) {
+					r.backoffFunc()
+					bm.enqueueRequest(r)
+				}(req, w.bm)
 			}
 		}
 		log.Debugf("bundle downloader %d stopped", w.id)