This bug has existed in some form for months, but didn't manifest very often due to a different bug that I recently fixed.

My recent code cleanup refactor and fixes made this issue worse.