about summary refs log tree commit diff
path: root/src/rt/circular_buffer.cpp
diff options
context:
space:
mode:
authorBrian Anderson <andersrb@gmail.com>2011-01-07 01:15:39 -0500
committerGraydon Hoare <graydon@mozilla.com>2011-01-07 11:34:14 -0800
commita9994a29634cc8d1ce330bdbb41fb1941c41f778 (patch)
tree8900a89ea5a825b1b1102eb06f2fb66517d0ade5 /src/rt/circular_buffer.cpp
parent12eb60c29d8b559f7de7890917094ec95999e847 (diff)
downloadrust-a9994a29634cc8d1ce330bdbb41fb1941c41f778.tar.gz
rust-a9994a29634cc8d1ce330bdbb41fb1941c41f778.zip
Correctly initialize circular_buffer to a power-of-two bytes
Diffstat (limited to 'src/rt/circular_buffer.cpp')
-rw-r--r--src/rt/circular_buffer.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/rt/circular_buffer.cpp b/src/rt/circular_buffer.cpp
index b2eab97ebd0..bdf251248cd 100644
--- a/src/rt/circular_buffer.cpp
+++ b/src/rt/circular_buffer.cpp
@@ -15,7 +15,8 @@ is_power_of_two(size_t value) {
 circular_buffer::circular_buffer(rust_dom *dom, size_t unit_sz) :
     dom(dom),
     unit_sz(unit_sz),
-    _buffer_sz(INITIAL_CIRCULAR_BUFFFER_SIZE_IN_UNITS * unit_sz),
+    _buffer_sz(next_power_of_two(
+               INITIAL_CIRCULAR_BUFFFER_SIZE_IN_UNITS * unit_sz)),
     _next(0),
     _unread(0),
     _buffer((uint8_t *)dom->calloc(_buffer_sz)) {