1166
// Apply to state
1167
if (isRootAction(action)) {
1169
>
// values even when the patch matches the current state, and re-emitting
1170
>
// it would cause clients observing rootState.onDidChange to react and
1171
>
// potentially re-dispatch in a loop. Check the action's own patch
1172
>
// against current values before running the reducer so we avoid
1173
>
// allocating a new state object at all.
1174
>
if (action.type === ActionType.RootConfigChanged && this._rootState.config) {
1175
const current = this._rootState.config.values;
1176
const patch = action.config;