summaryrefslogtreecommitdiffstats
path: root/crs.c
diff options
context:
space:
mode:
authorLaMont Jones <lamont@debian.org>2003-05-07 08:36:40 -0600
committerBryan Newbold <bnewbold@robocracy.org>2017-02-20 00:05:27 -0800
commite21d47d7813159bb71e0671df9b52ec0470c358d (patch)
tree3c7770ea846123c291f599044e9f234ac17616bb /crs.c
parent8cfce36c6a4fc2e0a0ab6ef2db66a23cbe462693 (diff)
parentdeda2c0fd8689349fea2a900199a76ff7ecb319e (diff)
downloadscm-f4a471ca5d72aa64a33e196a85c18d81fc6e7baf.tar.gz
scm-f4a471ca5d72aa64a33e196a85c18d81fc6e7baf.zip
Import Debian changes 5d6-3.2debian/5d6-3.2
scm (5d6-3.2) unstable; urgency=low * Fix hppa compile. Closes: #144062 scm (5d6-3.1) unstable; urgency=low * NMU with patch from James Troup, to fix FTBFS on sparc. Closes: #191171 scm (5d6-3) unstable; urgency=low * Add build depend on xlibs-dev (Closes: #148020) scm (5d6-2) unstable; urgency=low * Remove libregexx-dev from build-depends. * Change build to use ./scmlit rather than scmlit (should fix some build problems) (looks like alpha is mostly building) * New release (Closes: #140175) * Built with turtlegraphics last time (Closes: #58515) scm (5d6-1) unstable; urgency=low * New upstream. * Add xlib and turtlegr to requested list of features. (closes some bug) * Make clean actually clean most everything up. * Remove hacks renaming build to something else and just set build as a .PHONY target in debian/rules. * Add the turtlegr code. scm (5d5-1) unstable; urgency=low * New upstream * Has fixes for 64 bit archs. May fix alpha compile problem. Does fix (Closes: #140175) * Take out -O2 arg. scm (5d4-3) unstable; urgency=low * Don't link with regexx, but just use libc6's regular expression functions. * Define (terms) to output /usr/share/common-licenses/GPL (Closes: #119321) scm (5d4-2) unstable; urgency=low * Add texinfo to build depends (Closes: #107011) scm (5d4-1) unstable; urgency=low * New upstream release. * Move install-info --remove to prerm. scm (5d3-5) unstable; urgency=low * Move scm info files to section "The Algorithmic Language Scheme" to match up with guile. scm (5d3-4) unstable; urgency=low * Fix build depends (Closes: #76691) scm (5d3-3) unstable; urgency=low * Fix path in scm dhelp file. scm (5d3-2) unstable; urgency=low * Actually put the header files in the package. Oops. scm (5d3-1) unstable; urgency=low * New upstream. (Closes: #74761) * Make (terms) use new license location. * Make use libregexx rather than librx. * Fix build depends for above. * Using new regex lib seems to fix crash (Closes: #66787) * Consider adding scm-dev package with headers, but instead just add the headers to the scm package. (Closes: #70787) * Add doc-base support.
Diffstat (limited to 'crs.c')
-rw-r--r--crs.c48
1 files changed, 18 insertions, 30 deletions
diff --git a/crs.c b/crs.c
index ef1e956..665b0bd 100644
--- a/crs.c
+++ b/crs.c
@@ -15,26 +15,26 @@
* the Free Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111, USA.
*
* As a special exception, the Free Software Foundation gives permission
- * for additional uses of the text contained in its release of GUILE.
+ * for additional uses of the text contained in its release of SCM.
*
- * The exception is that, if you link the GUILE library with other files
+ * The exception is that, if you link the SCM library with other files
* to produce an executable, this does not by itself cause the
* resulting executable to be covered by the GNU General Public License.
* Your use of that executable is in no way restricted on account of
- * linking the GUILE library code into it.
+ * linking the SCM library code into it.
*
* This exception does not however invalidate any other reasons why
* the executable file might be covered by the GNU General Public License.
*
* This exception applies only to the code released by the
- * Free Software Foundation under the name GUILE. If you copy
+ * Free Software Foundation under the name SCM. If you copy
* code from other Free Software Foundation releases into a copy of
- * GUILE, as the General Public License permits, the exception does
+ * SCM, as the General Public License permits, the exception does
* not apply to the code that you add in this way. To avoid misleading
* anyone as to the status of such modified files, you must delete
* this exception notice from them.
*
- * If you write modifications of your own for GUILE, it is your choice
+ * If you write modifications of your own for SCM, it is your choice
* whether to permit this exception to apply to your modifications.
* If you do not wish that, delete this exception notice.
*/
@@ -43,7 +43,12 @@
Author: Aubrey Jaffer */
#include "scm.h"
-#include <curses.h>
+
+#ifdef __FreeBSD__
+# include <ncurses.h>
+#else
+# include <curses.h>
+#endif
#ifdef MWC
# include <unctrl.h>
@@ -54,18 +59,6 @@
int wgetch P((WINDOW *));
#endif
-static int curses_initted = 0;
-
-static SCM scm_linitscr(void);
-
-
-static void do_init_maybe()
-{
- if(!curses_initted)
- scm_linitscr();
- curses_initted = 1;
-}
-
/* define WIN port type */
#define WIN(obj) ((WINDOW*)CDR(obj))
#define WINP(obj) (tc16_window==TYP16(obj))
@@ -96,8 +89,8 @@ static ptobfuns winptob = {
bwaddch,
bwaddstr,
bwwrite,
- wrefresh, /* warning from compiler is wrefresh(WINDOW*) not (FILE*) */
- wgetch, /* warning from compiler is wrefresh(WINDOW*) not (FILE*) */
+ wrefresh,
+ wgetch,
freewindow};
SCM mkwindow(win)
@@ -105,16 +98,14 @@ SCM mkwindow(win)
{
SCM z;
if (NULL==win) return BOOL_F;
- NEWCELL(z);
DEFER_INTS;
- SETCHARS(z, win);
- CAR(z) = scm_port_entry(tc16_window, OPN | RDNG | WRTNG);
+ z = scm_port_entry((FILE *)win, tc16_window, OPN | RDNG | WRTNG);
ALLOW_INTS;
return z;
}
SCM *loc_stdscr = 0;
-SCM scm_linitscr()
+SCM linitscr()
{
WINDOW *win;
if NIMP(*loc_stdscr) {
@@ -122,12 +113,10 @@ SCM scm_linitscr()
return *loc_stdscr;
}
win = initscr();
- curses_initted = 1;
return *loc_stdscr = mkwindow(win);
}
SCM lendwin()
{
- do_init_maybe();
if IMP(*loc_stdscr) return BOOL_F;
return ERR==endwin() ? BOOL_F : BOOL_T;
}
@@ -146,7 +135,6 @@ SCM lnewwin(lines, cols, args)
begin_x = CAR(CDR(args));
ASSERT(INUMP(begin_y), begin_y, ARG3, s_newwin);
ASSERT(INUMP(begin_x), begin_y, ARG4, s_newwin);
- do_init_maybe();
win = newwin(INUM(lines), INUM(cols),
INUM(begin_y), INUM(begin_x));
return mkwindow(win);
@@ -317,7 +305,7 @@ static char s_nonl[] = "nonl", s_nocbreak[] = "nocbreak",
s_noecho[] = "noecho", s_noraw[] = "noraw";
static iproc subr0s[] = {
- {"initscr", scm_linitscr},
+ {"initscr", linitscr},
{"endwin", lendwin},
{&s_nonl[2], lnl},
{s_nonl, lnonl},
@@ -418,5 +406,5 @@ void init_crs()
make_subr(s_mvwin, tc7_subr_3, lmvwin);
make_subr(s_box, tc7_subr_3, lbox);
add_feature("curses");
- /* add_final(lendwin); */
+ add_final(lendwin);
}