WaitSecs() windows XP problem

We are having a problem with the WaitSecs() function. we are using
matlab 7 on a windows xp pro computer.

we noticed that when we put a decimal number in that is less that 1
second the waitSecs function returns imediatly.(i.e waitSecs(0.9)
doesnt waait at all) but it works fine when its over 1 second.

to test the problem i created a little test program:

function test1

a = clock;
WaitSecs(0.9);
clock - a

and when I run the program on the old version of matlab(6.5) we get
the following output
>> test1
ans =
0 0 0 0 0 0.9060

but when we run the exact same code on matlab 7 we get
ans =
0 0 0 0 0 0

and there is no delay present.

any idea what could be doing this?