Procházet zdrojové kódy

Fixes

tags/v1.0.4^2
9seconds před 6 roky
rodič
revize
6a9069ca72
1 změnil soubory, kde provedl 10 přidání a 9 odebrání
  1. 10
    9
      wrappers/stream/obfuscated2.go

+ 10
- 9
wrappers/stream/obfuscated2.go Zobrazit soubor

@@ -21,11 +21,8 @@ var (
21 21
 	}
22 22
 )
23 23
 
24
-func poolWrapperObfuscated2WritePoolAcquire(size int) *bytes.Buffer {
25
-	buf := poolWrapperObfuscated2WritePool.Get().(*bytes.Buffer)
26
-	buf.Grow(size)
27
-
28
-	return buf
24
+func poolWrapperObfuscated2WritePoolAcquire() *bytes.Buffer {
25
+	return poolWrapperObfuscated2WritePool.Get().(*bytes.Buffer)
29 26
 }
30 27
 
31 28
 func poolWrapperObfuscated2WritePoolRelease(buf *bytes.Buffer) {
@@ -62,22 +59,26 @@ func (w *wrapperObfuscated2) Read(p []byte) (int, error) {
62 59
 }
63 60
 
64 61
 func (w *wrapperObfuscated2) WriteTimeout(p []byte, timeout time.Duration) (int, error) {
65
-	buffer := poolWrapperObfuscated2WritePoolAcquire(len(p))
62
+	buffer := poolWrapperObfuscated2WritePoolAcquire()
66 63
 	defer poolWrapperObfuscated2WritePoolRelease(buffer)
67 64
 
65
+	buffer.Write(p)
66
+
68 67
 	buf := buffer.Bytes()
69
-	copy(buf, p)
68
+
70 69
 	w.encryptor.XORKeyStream(buf, buf)
71 70
 
72 71
 	return w.parent.WriteTimeout(buf, timeout)
73 72
 }
74 73
 
75 74
 func (w *wrapperObfuscated2) Write(p []byte) (int, error) {
76
-	buffer := poolWrapperObfuscated2WritePoolAcquire(len(p))
75
+	buffer := poolWrapperObfuscated2WritePoolAcquire()
77 76
 	defer poolWrapperObfuscated2WritePoolRelease(buffer)
78 77
 
78
+	buffer.Write(p)
79
+
79 80
 	buf := buffer.Bytes()
80
-	copy(buf, p)
81
+
81 82
 	w.encryptor.XORKeyStream(buf, buf)
82 83
 
83 84
 	return w.parent.Write(buf)

Načítá se…
Zrušit
Uložit