()
| 1129 | } |
| 1130 | |
| 1131 | func (d *Decoder) readLongArray() ([]int64, error) { |
| 1132 | l, err := d.readInt() |
| 1133 | if err != nil { |
| 1134 | return nil, err |
| 1135 | } |
| 1136 | if l < 0 { |
| 1137 | return nil, fmt.Errorf("negative length for make (read long array)") |
| 1138 | } |
| 1139 | var data = make([]byte, l*8) |
| 1140 | _, err = d.rd.Read(data) |
| 1141 | |
| 1142 | if err != nil { |
| 1143 | return nil, err |
| 1144 | } |
| 1145 | |
| 1146 | var sl = make([]int64, l) |
| 1147 | |
| 1148 | for i := range sl { |
| 1149 | sl[i] = int64(data[i*8+0])<<56 | int64(data[i*8+1])<<48 | int64(data[i*8+2])<<40 | int64(data[i*8+3])<<32 | int64(data[i*8+4])<<24 | int64(data[i*8+5])<<16 | int64(data[i*8+6])<<8 | int64(data[i*8+7]) |
| 1150 | } |
| 1151 | return sl, nil |
| 1152 | } |
no test coverage detected