The explanation of why you are having this is that when you call setText() a new textChanged() signal is emitted and so on to infinity (or up to the limit of the size of the stack that then goes overflow)