diff options
author | Shinya Maeda <shinya@gitlab.com> | 2018-04-18 15:19:53 +0900 |
---|---|---|
committer | Shinya Maeda <shinya@gitlab.com> | 2018-04-18 15:19:53 +0900 |
commit | 1e817e0018af2c3fbb622ec74f02ae255e7be95f (patch) | |
tree | d46d13d8d46f94bc80a92a46ed8d070a5c38575a /lib/gitlab/ci/trace | |
parent | 731118d349c53a712c7afa67adc2b457895af048 (diff) | |
download | gitlab-ce-1e817e0018af2c3fbb622ec74f02ae255e7be95f.tar.gz |
Align force_encoding strategy into Trace::Stream
Diffstat (limited to 'lib/gitlab/ci/trace')
-rw-r--r-- | lib/gitlab/ci/trace/chunked_io.rb | 3 | ||||
-rw-r--r-- | lib/gitlab/ci/trace/stream.rb | 8 |
2 files changed, 7 insertions, 4 deletions
diff --git a/lib/gitlab/ci/trace/chunked_io.rb b/lib/gitlab/ci/trace/chunked_io.rb index 2caebe3c95e..6b4a9f61961 100644 --- a/lib/gitlab/ci/trace/chunked_io.rb +++ b/lib/gitlab/ci/trace/chunked_io.rb @@ -114,7 +114,6 @@ module Gitlab def write(data) start_pos = tell - data = data.force_encoding(Encoding::BINARY) while tell < start_pos + data.bytesize # get slice from current offset till the end where it falls into chunk @@ -178,7 +177,7 @@ module Gitlab current_chunk.tap do |chunk| raise FailedToGetChunkError unless chunk - @chunk = chunk.data.force_encoding(Encoding::BINARY) + @chunk = chunk.data @chunk_range = chunk.range end end diff --git a/lib/gitlab/ci/trace/stream.rb b/lib/gitlab/ci/trace/stream.rb index bcdd4225ce7..e78bca4be99 100644 --- a/lib/gitlab/ci/trace/stream.rb +++ b/lib/gitlab/ci/trace/stream.rb @@ -37,6 +37,8 @@ module Gitlab end def append(data, offset) + data = data.force_encoding(Encoding::BINARY) + stream.truncate(offset) stream.seek(0, IO::SEEK_END) stream.write(data) @@ -44,6 +46,8 @@ module Gitlab end def set(data) + data = data.force_encoding(Encoding::BINARY) + stream.seek(0, IO::SEEK_SET) stream.write(data) stream.truncate(data.bytesize) @@ -126,11 +130,11 @@ module Gitlab buf += debris debris, *lines = buf.each_line.to_a lines.reverse_each do |line| - yield(line.force_encoding('UTF-8')) + yield(line.force_encoding(Encoding.default_external)) end end - yield(debris.force_encoding('UTF-8')) unless debris.empty? + yield(debris.force_encoding(Encoding.default_external)) unless debris.empty? end def read_backward(length) |