cocos v2.4.14 关于点击事件的问题

最终在测试游戏的时候碰到一个点击事件的bug 当按下一下 button 不松开时 这是在上层再添加一个遮罩层 并且这个遮罩层添加了 cc.BlockInputEvents 组件 然后点击这个遮罩层 等这个遮罩层去除以后 再松开 button 这里上个点击事件会被记录 并且不会消除 导致后续所有点击事件失效
目前已经在三台手机上测试过,均能复现 , 这一块希望引擎组能重视一下


排查发现 eventManager._currentTouch 一直存在 导致所有事件不会处理回调了 我这边是禁止多点触控的
目前想到的解决方案是 添加 cc.BlockInputEvents 的时候将该层下方注册的点击事件清理掉
// @ts-ignore

let onEnableFun = cc.BlockInputEvents.prototype.onEnable;

// @ts-ignore

cc.BlockInputEvents.prototype.onEnable = function () {

    onEnableFun.call(this);

    // 去除底层的事件

    //@ts-ignore

    let eventManager = cc.internal.eventManager;

    let id = "__cc_touch_one_by_one";

    eventManager._sortEventListeners(id);

    var oneByOneListeners = eventManager._getListeners(id);

    var sceneGraphPriorityListeners: any[] = oneByOneListeners.getSceneGraphPriorityListeners();

    let clearEvent = false;

    for (let k = 0; k < sceneGraphPriorityListeners.length; k++) {

        let listener = sceneGraphPriorityListeners[k];

        let owner: cc.Node = listener.owner;

        if (owner && owner.isValid && owner != this.node) {

            if (listener._claimedTouches.length > 0) {

                clearEvent = true;

                listener._claimedTouches.length = 0;

            }

        }

    }

    if (clearEvent) {

        eventManager._clearCurTouch();

    }

}

cocos creator 版本: 2.4.14
测试机型: 华为 vivo 小米