found one bug: turns out my double buffered system was acting as a single buffer system