I could remove the exec() for testing, but I need it, because my app needs an event loop.

And, if I run the app for a long time, ie, generate a lot of lines of output, it seems like it would have nothing to do with how quickly ctrl-c is pressed.

---

Just tested... commenting out exec() does cause output to redirect, but I need exec to start the event loop.

Why does it print to the terminal normally but not to stdout when redirecting? Perhaps QCoreApplication puts it on a different file pointer (ie, not 1 or 2 -- stdout or stderr)?