Merge pull request #6743 from mateka/issue-6296

Issue #6296: When searching for control, checking if matrix is inversible
This commit is contained in:
Rémi Verschelde
2016-10-09 14:53:32 +02:00
committed by GitHub
2 changed files with 4 additions and 1 deletions
+3
View File
@@ -1715,6 +1715,9 @@ Control* Viewport::_gui_find_control_at_pos(CanvasItem* p_node,const Point2& p_g
}
Matrix32 matrix = p_xform * p_node->get_transform();
// matrix.basis_determinant() == 0.0f implies that node does not exist on scene
if(matrix.basis_determinant() == 0.0f)
return NULL;
if (!c || !c->clips_input() || c->has_point(matrix.affine_inverse().xform(p_global))) {