Code itself works fine, but a debugging step by step does no flow as expected.

Debugging “focus” jumps to some illogical code block if keyword else is used. If else words are cleaned out, no problems exist. The attached code does not do anything meaningful, but exposes the problem.
QtCreator 1.3.1 is used.

Is this a known bug in Qt Creator? I tried two different debuggers with Creator.

int Jump1()
{
int direction = 1;
int currentValue = 0;
int someValue = 2;
int raplays = 42;
int bitMask = 0x0;

if(direction == 1)
{
if(currentValue < someValue)
{
bitMask |= 0x1;
raplays = 7;
bitMask |= 0x2; // Jumps from here...
}
else if(currentValue > someValue)
{
bitMask |= 0x4;
raplays = 8;
bitMask |= 0x8; // To here while debuging!!!!!!!!
}
}
else if (direction != 1)
// If else if is replaced with "if", previous if block works fine:
//if (direction != 1)
{
bitMask |= 0x10;
if(0 == 0)
{
bitMask |= 0x20;
raplays = 7;
bitMask |= 0x40;
}
bitMask |= 0x80;
}

bitMask = bitMask;
return bitMask;
}