diff options
Diffstat (limited to '')
| -rw-r--r-- | bitreader.go | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/bitreader.go b/bitreader.go index e50f433..6b88709 100644 --- a/bitreader.go +++ b/bitreader.go | |||
| @@ -368,18 +368,18 @@ func (reader *Reader) ReadBytes(bytes uint64) (uint64, error) { | |||
| 368 | // | 368 | // |
| 369 | // Returns an error if there are no remaining bits. | 369 | // Returns an error if there are no remaining bits. |
| 370 | func (reader *Reader) ReadString() (string, error) { | 370 | func (reader *Reader) ReadString() (string, error) { |
| 371 | var out string | 371 | var out []byte |
| 372 | for { | 372 | for { |
| 373 | value, err := reader.ReadBytes(1) | 373 | value, err := reader.ReadBytes(1) |
| 374 | if err != nil { | 374 | if err != nil { |
| 375 | return out, err | 375 | return string(out), err |
| 376 | } | 376 | } |
| 377 | if value == 0 { | 377 | if value == 0 { |
| 378 | break | 378 | break |
| 379 | } | 379 | } |
| 380 | out += string(rune(value)) | 380 | out = append(out, byte(value)) |
| 381 | } | 381 | } |
| 382 | return out, nil | 382 | return string(out), nil |
| 383 | } | 383 | } |
| 384 | 384 | ||
| 385 | // ReadStringLength is a function that reads every byte | 385 | // ReadStringLength is a function that reads every byte |
| @@ -389,20 +389,20 @@ func (reader *Reader) ReadString() (string, error) { | |||
| 389 | // | 389 | // |
| 390 | // Returns an error if there are no remaining bits. | 390 | // Returns an error if there are no remaining bits. |
| 391 | func (reader *Reader) ReadStringLength(length uint64) (string, error) { | 391 | func (reader *Reader) ReadStringLength(length uint64) (string, error) { |
| 392 | var out string | 392 | var out []byte |
| 393 | var i uint64 | 393 | var i uint64 |
| 394 | for i = 0; i < length; i++ { | 394 | for i = 0; i < length; i++ { |
| 395 | value, err := reader.ReadBytes(1) | 395 | value, err := reader.ReadBytes(1) |
| 396 | if err != nil { | 396 | if err != nil { |
| 397 | return out, err | 397 | return string(out), err |
| 398 | } | 398 | } |
| 399 | if value == 0 { | 399 | if value == 0 { |
| 400 | reader.SkipBytes(length - 1 - i) | 400 | reader.SkipBytes(length - 1 - i) |
| 401 | break | 401 | break |
| 402 | } | 402 | } |
| 403 | out += string(rune(value)) | 403 | out = append(out, byte(value)) |
| 404 | } | 404 | } |
| 405 | return out, nil | 405 | return string(out), nil |
| 406 | } | 406 | } |
| 407 | 407 | ||
| 408 | // ReadBitsToSlice is a function that reads the specified amount of bits | 408 | // ReadBitsToSlice is a function that reads the specified amount of bits |