diff --git a/src/gmio_core/internal/stringstream.h b/src/gmio_core/internal/stringstream.h index 35e0c60..9eb44b6 100644 --- a/src/gmio_core/internal/stringstream.h +++ b/src/gmio_core/internal/stringstream.h @@ -28,7 +28,7 @@ */ struct gmio_stringstream { - gmio_stream_t* stream; + gmio_stream_t stream; gmio_string_t strbuff; const char* strbuff_end; /*!< Position after last char in strbuff */ const char* strbuff_at; /*!< Position indicator in buffer */ @@ -134,8 +134,9 @@ const char *gmio_stringstream_next_char(gmio_stringstream_t *it) /* Read next chunk of data */ it->strbuff_at = it->strbuff.ptr; - it->strbuff.len = gmio_stream_read( - it->stream, it->strbuff.ptr, sizeof(char), it->strbuff.max_len); + it->strbuff.len = + gmio_stream_read( + &it->stream, it->strbuff.ptr, 1, it->strbuff.max_len); it->strbuff_end = it->strbuff.ptr + it->strbuff.len; if (it->strbuff.len > 0) { if (it->func_stream_read_hook != NULL) diff --git a/src/gmio_stl/stla_read.c b/src/gmio_stl/stla_read.c index 21a9735..199d021 100644 --- a/src/gmio_stl/stla_read.c +++ b/src/gmio_stl/stla_read.c @@ -163,7 +163,7 @@ int gmio_stla_read(gmio_transfer_t* trsf, gmio_stl_mesh_creator_t* creator) gmio_stream_size(&trsf->stream); parse_data.stream_iterator_cookie.is_stop_requested = GMIO_FALSE; - parse_data.stream_iterator.stream = &trsf->stream; + parse_data.stream_iterator.stream = trsf->stream; parse_data.stream_iterator.strbuff.ptr = trsf->memblock.ptr; parse_data.stream_iterator.strbuff.max_len = trsf->memblock.size; parse_data.stream_iterator.cookie = &parse_data.stream_iterator_cookie; diff --git a/tests/test_core_internal.c b/tests/test_core_internal.c index 90c8d18..068d687 100644 --- a/tests/test_core_internal.c +++ b/tests/test_core_internal.c @@ -136,10 +136,9 @@ const char* test_internal__gmio_fast_atof() &test_internal__gmio_fast_atof__fstr[0], sizeof(test_internal__gmio_fast_atof__fstr) - 1, 0 }; - gmio_stream_t stream = gmio_istream_buffer(&streambuff); float f2; - it.stream = &stream; + it.stream = gmio_istream_buffer(&streambuff); it.strbuff.ptr = &strbuff[0]; it.strbuff.max_len = sizeof(strbuff) - 1; gmio_stringstream_init(&it); @@ -187,7 +186,6 @@ const char* test_internal__stringstream() &test_internal__stringstream__text[0], sizeof(test_internal__stringstream__text) - 1, 0 }; - gmio_stream_t stream = gmio_istream_buffer(&buff); char small_fwd_it_str[4]; char fwd_it_str[32]; @@ -196,7 +194,7 @@ const char* test_internal__stringstream() char copy_str[128]; gmio_string_t copy_strbuff; - fwd_it.stream = &stream; + fwd_it.stream = gmio_istream_buffer(&buff); fwd_it.strbuff.ptr = fwd_it_str; fwd_it.strbuff.max_len = sizeof(fwd_it_str); gmio_stringstream_init(&fwd_it); @@ -247,7 +245,6 @@ const char* test_internal__stringstream() &test_internal__stringstream__text[0], sizeof(test_internal__stringstream__text) - 1, 0 }; - gmio_stream_t stream = gmio_istream_buffer(&buff); char fwd_it_str[32]; gmio_stringstream_t fwd_it = {0}; @@ -255,7 +252,7 @@ const char* test_internal__stringstream() char copy_str[128]; gmio_string_t copy_strbuff; - fwd_it.stream = &stream; + fwd_it.stream = gmio_istream_buffer(&buff); fwd_it.strbuff.ptr = fwd_it_str; fwd_it.strbuff.max_len = sizeof(fwd_it_str); gmio_stringstream_init(&fwd_it);