Weird bug in my databases causing changes when none should happen
===

I think the easier way to describe my bug is by [showing it in a video][1]. But the general idea is that I use a database to keep track of which items in a list of checkboxes is checked off. Whenever I click on an item and activate that list's action mode, it immediately forget those changes, in spite of them having already made their way to the database. What makes this worse is when multiple items become afflicted with this bug, they end up forming a strange bit of circular logic, wherein one item in the database will become checked and the other will become unchecked, and the two will continue this in a cycle as actions are done on the list due to the checkboxes constantly cycling between a checked state and an unchecked state and thus triggering the checkbox's `onCheckedChangedListener`. There is no code in `onListItemClick()` that should be causing these changes to happen on either a list level or database level, and no code in `onPrepareActionMode` or `onCreateActionMode` that would reload the CursorLoader or manipulate the selected item. Can anyone help me figure out what's going on to cause this? (My implementation can be found in the video, but I will paste it here if requested.)


  [1]: http://www.youtube.com/watch?v=7YCYbHw4Sfg