diff --git a/src/renderer_gl.cpp b/src/renderer_gl.cpp index cd9508e61..efb2b7f9c 100644 --- a/src/renderer_gl.cpp +++ b/src/renderer_gl.cpp @@ -6448,22 +6448,14 @@ namespace bgfx { namespace gl if (0 == compiled) { - LineReader lineReader(code); - bx::Error err; - for (int32_t line = 1; err.isOk(); ++line) + bx::LineReader lineReader(code); + for (int32_t line = 1; !lineReader.isDone(); ++line) { - char str[4096]; - int32_t len = bx::read(&lineReader, str, BX_COUNTOF(str)-1, &err); + bx::StringView str = lineReader.next(); - if (err.isOk() ) + if (!lineReader.isDone() ) { - str[len] = '\0'; - bx::StringView eol = bx::strFindEol(str); - if (eol.getPtr() != str) - { - *const_cast(eol.getPtr() ) = '\0'; - } - BX_TRACE("%3d %s", line, str); + BX_TRACE("%3d %.*s", line, str.getLength(), str.getPtr() ); } } diff --git a/src/renderer_gl.h b/src/renderer_gl.h index ffaca99dc..124d76e90 100644 --- a/src/renderer_gl.h +++ b/src/renderer_gl.h @@ -1671,52 +1671,6 @@ namespace bgfx { namespace gl bx::RingBufferControl m_control; }; - class LineReader : public bx::ReaderI - { - public: - LineReader(const void* _str) - : m_str( (const char*)_str) - , m_pos(0) - , m_size(bx::strLen( (const char*)_str) ) - { - } - - LineReader(const bx::StringView& _str) - : m_str(_str.getPtr() ) - , m_pos(0) - , m_size(_str.getLength() ) - { - } - - virtual int32_t read(void* _data, int32_t _size, bx::Error* _err) override - { - if (m_str[m_pos] == '\0' - || m_pos == m_size) - { - BX_ERROR_SET(_err, BX_ERROR_READERWRITER_EOF, "LineReader: EOF."); - return 0; - } - - uint32_t pos = m_pos; - const char* str = &m_str[pos]; - const char* nl = bx::strFindNl(str).getPtr(); - pos += (uint32_t)(nl - str); - - const char* eol = &m_str[pos]; - - uint32_t size = bx::uint32_min(uint32_t(eol - str), _size); - - bx::memCopy(_data, str, size); - m_pos += size; - - return size; - } - - const char* m_str; - uint32_t m_pos; - uint32_t m_size; - }; - } /* namespace gl */ } // namespace bgfx #endif // BGFX_RENDERER_GL_H_HEADER_GUARD