Flash AS bug?

Was working on my flash game when I came across this strange thing on flash. It’s hard to explain, so I’m going to give instruction on how to reproduce the bug.

Basically I want you to follow these steps. I want you to actually do them, not just look at the code and say what you think the code will do.

  1. Open up a new flash document

  2. Paste this code in frame one …

i = 0

_root.onEnterFrame = function(){

if(Key.isDown(Key.SPACE)){
trace(" i = " + i++);
}
}

  1. Hold down the Up and Right arrow keys, and hold down space. You should see i incrementing.

  2. Hold down the Right and Down arrow keys, and hold down space.You should see i incrementing.

  3. Hold down the Down and Left arrow keys, and hold down space. You should see i incrementing.

  4. Now here comes the strange part… Hold down the Left and Up arrow key, and hold down space. If your result are the same as mine, then you will not see i incrementing.

Why is it that i gets incremented when you hold all other combination of arrow keys except for when you hold Left and Down?

Hopefully this clears up any confusion.

*If your wondering how this is involved my game, when your holding top and left your heading north west. In my game you use space to attack, so when your heading in that direction your enable to attack :(.