In that case I'm feeling much less confident about my idea to add diodes.
Sorry keyb_gr, didn't mean to hijack your responses like this.
Diodes aren't really anything magical, they are just the electronics equivalent of a one way valve. They allow current to flow in one direction, but not in the other. They don't modify a controllers perception of the state of the matrix, unless the controller is aware that they are there (through the version of the firmware loaded on to the controller usually).
The controller design is actually much simpler if diodes are in place as you don't have to worry about checking for, or handling inconsistent states.