I've reviewed this patch and I believe it to be the correct patch. I believe it would be prudent to add a test case for this. I'm unable to attach, but here is a link to a patch for that: http://scottdial.com/python-dev/curses-test.patch
I'm still able to reproduce this bug with Python 2.5.1. The following script always gives the same size: import curses while True: scr = curses.initscr() print curses.LINES, curses.COLS scr.getch() scr.getch() curses.endwin()