mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-01-13 15:56:23 +01:00
data-output-stream: Fix some access after free
The memory pointed to by a GMemoryOutputStream can be realloc'd https://bugzilla.gnome.org/show_bug.cgi?id=711802
This commit is contained in:
parent
72171240cc
commit
438f7110f9
@ -450,6 +450,7 @@ test_truncate (void)
|
|||||||
g_assert (res);
|
g_assert (res);
|
||||||
g_assert_cmpint (g_memory_output_stream_get_size (base_stream), ==, len);
|
g_assert_cmpint (g_memory_output_stream_get_size (base_stream), ==, len);
|
||||||
g_assert_cmpint (g_memory_output_stream_get_data_size (base_stream), ==, 4);
|
g_assert_cmpint (g_memory_output_stream_get_data_size (base_stream), ==, 4);
|
||||||
|
stream_data = g_memory_output_stream_get_data (base_stream);
|
||||||
g_assert_cmpint (stream_data[0], ==, 0x01);
|
g_assert_cmpint (stream_data[0], ==, 0x01);
|
||||||
g_assert_cmpint (stream_data[1], ==, 0x23);
|
g_assert_cmpint (stream_data[1], ==, 0x23);
|
||||||
g_assert_cmpint (stream_data[2], ==, 0x45);
|
g_assert_cmpint (stream_data[2], ==, 0x45);
|
||||||
@ -461,6 +462,7 @@ test_truncate (void)
|
|||||||
g_assert (res);
|
g_assert (res);
|
||||||
g_assert_cmpint (g_memory_output_stream_get_size (base_stream), ==, 4);
|
g_assert_cmpint (g_memory_output_stream_get_size (base_stream), ==, 4);
|
||||||
g_assert_cmpint (g_memory_output_stream_get_data_size (base_stream), ==, 4);
|
g_assert_cmpint (g_memory_output_stream_get_data_size (base_stream), ==, 4);
|
||||||
|
stream_data = g_memory_output_stream_get_data (base_stream);
|
||||||
g_assert_cmpint (stream_data[0], ==, 0x01);
|
g_assert_cmpint (stream_data[0], ==, 0x01);
|
||||||
g_assert_cmpint (stream_data[1], ==, 0x23);
|
g_assert_cmpint (stream_data[1], ==, 0x23);
|
||||||
g_assert_cmpint (stream_data[2], ==, 0x45);
|
g_assert_cmpint (stream_data[2], ==, 0x45);
|
||||||
@ -472,6 +474,7 @@ test_truncate (void)
|
|||||||
g_assert (res);
|
g_assert (res);
|
||||||
g_assert_cmpint (g_memory_output_stream_get_size (base_stream), ==, 6);
|
g_assert_cmpint (g_memory_output_stream_get_size (base_stream), ==, 6);
|
||||||
g_assert_cmpint (g_memory_output_stream_get_data_size (base_stream), ==, 4);
|
g_assert_cmpint (g_memory_output_stream_get_data_size (base_stream), ==, 4);
|
||||||
|
stream_data = g_memory_output_stream_get_data (base_stream);
|
||||||
g_assert_cmpint (stream_data[0], ==, 0x01);
|
g_assert_cmpint (stream_data[0], ==, 0x01);
|
||||||
g_assert_cmpint (stream_data[1], ==, 0x23);
|
g_assert_cmpint (stream_data[1], ==, 0x23);
|
||||||
g_assert_cmpint (stream_data[2], ==, 0x45);
|
g_assert_cmpint (stream_data[2], ==, 0x45);
|
||||||
@ -483,6 +486,7 @@ test_truncate (void)
|
|||||||
g_assert (res);
|
g_assert (res);
|
||||||
g_assert_cmpint (g_memory_output_stream_get_size (base_stream), ==, 2);
|
g_assert_cmpint (g_memory_output_stream_get_size (base_stream), ==, 2);
|
||||||
g_assert_cmpint (g_memory_output_stream_get_data_size (base_stream), ==, 2);
|
g_assert_cmpint (g_memory_output_stream_get_data_size (base_stream), ==, 2);
|
||||||
|
stream_data = g_memory_output_stream_get_data (base_stream);
|
||||||
g_assert_cmpint (stream_data[0], ==, 0x01);
|
g_assert_cmpint (stream_data[0], ==, 0x01);
|
||||||
g_assert_cmpint (stream_data[1], ==, 0x23);
|
g_assert_cmpint (stream_data[1], ==, 0x23);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user