At some point I think we should just throw an exception rather than have the app fail on allocation because of the infinite loop.