Fixed bug. Checks all conditions before returning.  bugid: 949
Fixed bug. Checks all conditions before returning. 
bugid: 949


BrettJaner/csla,MarimerLLC/csla,JasonBock/csla,JasonBock/csla,ronnymgm/csla-light,ronnymgm/csla-light,rockfordlhotka/csla,jonnybee/csla,rockfordlhotka/csla,JasonBock/csla,rockfordlhotka/csla,ronnymgm/csla-light,jonnybee/csla,MarimerLLC/csla,MarimerLLC/csla,BrettJaner/csla,jonnybee/csla,BrettJaner/csla