I've tried setting the values ranging from 1 to 5000. The poll() call still gets stuck in an infinite loop just with different timeout values. I retested under Eterm with timeout() set to 15 so that I could see what was going on under the hood. Unlike xfce4-terminal, with Eterm there are alternating poll() calls which tells me it's not stuck in a loop.
poll([{fd=5, events=POLLIN}], 1, 1) = 1 ([{fd=5, revents=POLLNVAL}])
poll([{fd=0, events=POLLIN}], 1, 15) = 0 (Timeout)
poll([{fd=5, events=POLLIN}], 1, 1) = 1 ([{fd=5, revents=POLLNVAL}])
poll([{fd=0, events=POLLIN}], 1, 15) = 0 (Timeout)
poll([{fd=5, events=POLLIN}], 1, 1) = 1 ([{fd=5, revents=POLLNVAL}])
poll([{fd=0, events=POLLIN}], 1, 15) = 0 (Timeout)
poll([{fd=5, events=POLLIN}], 1, 1) = 1 ([{fd=5, revents=POLLNVAL}])
poll([{fd=0, events=POLLIN}], 1, 15) = 0 (Timeout)
poll([{fd=5, events=POLLIN}], 1, 1) = 1 ([{fd=5, revents=POLLNVAL}])
poll([{fd=0, events=POLLIN}], 1, 15) = 0 (Timeout)
poll([{fd=5, events=POLLIN}], 1, 1) = 1 ([{fd=5, revents=POLLNVAL}])
poll([{fd=0, events=POLLIN}], 1, 15) = 0 (Timeout)
poll([{fd=5, events=POLLIN}], 1, 1) = 1 ([{fd=5, revents=POLLNVAL}])