If I define my own SIGWINCH signal handler, getmaxyx won't work (ie it will not report updated values). It will work if I call endwin() but this results in flickering (eg shows the screen prior to starting ncurses). Is there a way to avoid having to call endwin() or at least to avoid the above mentioned flickering? Note that the default signal handler (in combination with checking KEY_RESIZE) works, but I was trying to avoid polling by repeated calls to getch.