Javascript Bindings on Ouya Error in cc.rectIntersectsRect()

I’m trying to get cocos2d-x to work on the Ouya. I am using the javascript bindings to some html5 code that I have.

The HTML5 code runs fine in the browser, and returns what I would expect.

However it is failing on the Ouya and I’m lost as to why this might be happening. I suspect that there may be an issue with the way the code is being interpreted by SpiderMonkey, but who knows…

var collisionRect = cc.rect(
this.desiredPosition.x,
this.desiredPosition.y,
this.sprite.getTextureRect().width,
this.sprite.getTextureRect().height);

for (var i = 0; i < objects.getObjects().length; i++) {
var obj = objects.getObjects()[i];
var rect = cc.rect(obj.x, obj.y, obj.width, obj.height);
var intersectsRect = cc.rectIntersectsRect(rect, collisionRect);

rectIntersectsRect is returning true when by my math it should not be

rectA - {x:224 y:352 width: 96 height:160}
rectB - {x:256 y:671 width: 25 height:35}
insersection = true

by my math rectA.y+rectA.height < rectB.y should evaluate to true, and therefore the intersection should be false. However it is evaluating to true.

Here’s the code in cc.rectINtersectsRect

cc.rectIntersectsRect = function( rectA, rectB )
{
var bool = ! ( rectA.x > rectB.x + rectB.width ||
rectA.x + rectA.width < rectB.x ||
rectA.y > rectB.y rectB.height ||
rectA.y
rectA.height < rectB.y );
return bool;
};

Anyways I’m totally stumped as to what’s going on here.

Any help would be appreciated.