(p []byte)
| 655 | } |
| 656 | |
| 657 | func (w *messageWriter) Write(p []byte) (int, error) { |
| 658 | if w.err != nil { |
| 659 | return 0, w.err |
| 660 | } |
| 661 | |
| 662 | if len(p) > 2*len(w.c.writeBuf) && w.c.isServer { |
| 663 | // Don't buffer large messages. |
| 664 | err := w.flushFrame(false, p) |
| 665 | if err != nil { |
| 666 | return 0, err |
| 667 | } |
| 668 | return len(p), nil |
| 669 | } |
| 670 | |
| 671 | nn := len(p) |
| 672 | for len(p) > 0 { |
| 673 | n, err := w.ncopy(len(p)) |
| 674 | if err != nil { |
| 675 | return 0, err |
| 676 | } |
| 677 | copy(w.c.writeBuf[w.pos:], p[:n]) |
| 678 | w.pos += n |
| 679 | p = p[n:] |
| 680 | } |
| 681 | return nn, nil |
| 682 | } |
| 683 | |
| 684 | func (w *messageWriter) WriteString(p string) (int, error) { |
| 685 | if w.err != nil { |
no test coverage detected