gpm/gpm-1.20.1-weak-wgetch.patch
cvsdist c78d0885e9 auto-import changelog data from gpm-1.20.1-38.src.rpm
Thu Aug 07 2003 Adrian Havill <havill@redhat.com> 1.20.1-38
- Gpm_Open() NULL deref revisited (#101104). Patch by <leonardjo@hetnet.nl>
Wed Jul 30 2003 Adrian Havill <havill@redhat.com> 1.20.1-37
- removed auto-add of repeat with -M (#84310)
Tue Jul 29 2003 Adrian Havill <havill@redhat.com> 1.20.1-36
- fixed grammar typos in the init script (#89109)
- don't deref NULL string in Gpm_Open (#101104)
Wed Jul 02 2003 Adrian Havill <havill@redhat.com> 1.20.1-35
- remove debug output from gpm_report() to prevent spurious debugging msgs
    even when not in debug mode (#98210)
Thu Jun 26 2003 Adrian Havill <havill@redhat.com> 1.20.1-33
- reversed -t and -m params in init script, removed $OPTION
- add doc blurb regarding no auto-repeat with multiple mice
Tue Jun 24 2003 Adrian Havill <havill@redhat.com> 1.20.1-32
- update version
- add -lm for ceil()
- add hltest, mouse-test for all but zSeries
Mon Jun 16 2003 Jakub Jelinek <jakub@redhat.com>
- don't link against -lncurses, instead make wgetch and stdscr weak
    undefined symbols to break library dependency cycle
Thu Jun 12 2003 Elliot Lee <sopwith@redhat.com>
- Remove pam requirement
Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
- rebuilt
2004-09-09 05:51:57 +00:00

47 lines
1.5 KiB
Diff

When libncurses is configured with gpm support and gpm with ncurses support,
libncurses.so depends on libgpm.so and libgpm.so depends on libncurses.so.
Such loops should never happen.
If Gpm_Wgetch is passed non-NULL win argument, it must have been created by
ncurses anyway and so it should be already loaded.
On the other side, if Gpm_Wgetch is never used or used just with
NULL argument, libncurses is never needed.
--- gpm-1.20.1/configure.in.jj Tue Jul 18 09:17:32 2000
+++ gpm-1.20.1/configure.in Mon Jun 16 10:51:16 2003
@@ -98,7 +98,7 @@ No|no|N|n) SHARED_LIBS=-lc ;;
AC_CHECK_LIB($i, wgetch,,,$TERMLIBS)
else :; fi
done
- SHARED_LIBS="$LIBS $TERMLIBS -lc"
+ SHARED_LIBS="-lc"
LIBS=$SAVELIBS ;;
esac
--- gpm-1.20.1/configure.jj Tue Jul 18 09:18:10 2000
+++ gpm-1.20.1/configure Mon Jun 16 10:51:32 2003
@@ -1582,7 +1582,7 @@ fi
else :; fi
done
- SHARED_LIBS="$LIBS $TERMLIBS -lc"
+ SHARED_LIBS="-lc"
LIBS=$SAVELIBS ;;
esac
--- gpm-1.20.1/src/lib/libcurses.c.jj Mon Jan 17 16:34:00 2000
+++ gpm-1.20.1/src/lib/libcurses.c Mon Jun 16 10:55:52 2003
@@ -40,7 +40,12 @@
#endif /* HAVE_NCURSES_CURSES_H */
#endif /* HAVE_NCURSES_H */
-#define GET(win) ((win) ? wgetch(win) : getch())
+/* If win != NULL, it must have been created by ncurses anyway.
+ Avoid circular library dependencies. */
+#pragma weak wgetch
+#pragma weak stdscr
+
+#define GET(win) ((win && wgetch) ? wgetch(win) : getch())
int Gpm_Wgetch(WINDOW *win)
{