In SmartClient 6.5.1, under certain circumstances, it is possible to get an "Infinite Recursion" JavaScript error if a prompt has been shown via isc.showPrompt() and the user presses the Tab key repeatedly.

Apply this patch to resolve the issue:

Code:
//----------------------------------------------------------------------------
// Isomorphic SmartClient 6.5.1 patch
// Purpose: Prevent "Infinite Recursion" script error with prompt and Tab keypress
// 
// Applies to SmartClient 6.5.1 build only
//----------------------------------------------------------------------------
if (window.isc && isc.version.startsWith("6.5.1/") ){
       isc.Canvas.addProperties({
            $kf : function (_1, _2) {
                var _3 = this;
                do {
                    _3 = _1 ? _3.$vy() : _3.$vz();
                } while (_3 &&
                        (isc.EH.targetIsMasked(_3, _2) ||
                        _3.isDisabled() ||
                        !_3.isDrawn() || !_3.isVisible() || !_3.$kk()));
                if (_3) {
                    this.logInfo("focusInNextTabElement() shifting focus to:" + _3, "syntheticTabIndex");
                    _3.focusAtEnd(_1);
                } else if (_1) {
                    this.logInfo("focusInNextTabElement() shifting focus to first widget", "syntheticTabIndex");
                    if (isc.EH.$kj == null || 
                       (isc.EH.$kj == this && 
                         (this.isDisabled() || !this.isDrawn() || 
                         !this.isVisible()  || !this.$kk() || this.isMasked(_2))))
                    {
                        return;
                    }
                    isc.EH.$kh(_2);
                } else {
                    this.logInfo("focusInNextTabElement() shifting focus to last widget", "syntheticTabIndex");
                    if (isc.EH.$kl == null ||
                        (isc.EH.$kj == this && 
                         (this.isDisabled() || !this.isDrawn() || 
                         !this.isVisible()  || !this.$kk() || this.isMasked(_2))))
                    {
                        return;
                    }
                    isc.EH.$kg(_2);
                }
            }
        });
} else if (window.isc) {
  isc.Log.logWarn("Patch for SmartClient 6.5.1 build included in this application. " +
            "You are currently running SmartClient verion '"+ isc.version + 
            "'. This patch is not compatible with this build and will have no effect. " +
            "It should be removed from your application source.");

}