### Version 2.4.1 ### Reproduction link [https://jsfiddle.net/razvansbsb/2z359v28/](https://jsfiddle.net/razvansbsb/2z359v28/) ### Steps to reproduce 1. Define a component A that uses 2 mixins that each define their own provide properties wrapped in a Vue component, e.g. foo and bar. 2. Define a component B inside A that uses inject to add foo and bar properties ### What is expected? Both foo and bar should be available in component B. ### What is actually happening? Get 'too much recursion' exception <!-- generated by vue-issues. DO NOT REMOVE -->