Comment # 10 on bug 1132282 from
Created attachment 803053 [details]
Debug builds of initscrtest

Apologies; I neglected to build with -g. Attached new binaries built with -g
and -O0, though it hardly really matters, since the issue demonstrated by
initscrtest is really secondary to the primary issue (which is demonstrated by
the previous hello-ncurses test program).

Good find with the macros vs. functions difference. It seems that this
particular difference comes from NCURSES_OPAQUE. Indeed, if I build a
non-reentrant ncurses configured with --enable-opaque-ncurses and build/link
initscrtest.c against that, I get the desired behavior that the reentrant
ncurses exhibits. So this at least identifies the minimum that we want to use
for nvidia-installer to ensure binary compatibility with both reentrant and
non-reentrant ncurses: avoid referencing stdscr directly (including avoiding
the macros that assume stdscr as the default WINDOW * for the APIs that operate
on WINDOW *), and build/link against ncurses with NCURSES_OPAQUE set.

However, the underlying problem could still be problematic for other binary
programs that are built and linked against a non-reentrant, non-opaque ncurses
6. Again, I don't know how common such programs may be, but it's worth
consideration nevertheless.


You are receiving this mail because: