'use strict'; /*! * ignore */ module.exports = function(schema) { // `this.$__.validating` tracks whether there are multiple validations running // in parallel. We need to clear `this.$__.validating` before post hooks for gh-8597 const unshift = true; schema.s.hooks.post('validate', false, function() { if (this.$isSubdocument) { return; } this.$__.validating = null; }, unshift); schema.s.hooks.post('validate', false, function(error, res, next) { if (this.$isSubdocument) { next(); return; } this.$__.validating = null; next(); }, unshift); };