-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.2174 2014/03/01 23:17:47 tom Exp $
+-- $Id: NEWS,v 1.2177 2014/03/08 22:10:41 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
Changes through 1.9.9e did not credit all contributions;
it is not possible to add this information.
+20140308
+ + modify ifdef in read_entry.c to handle the case where
+ NCURSES_USE_DATABASE is not defined (patch by Xin Li).
+ + add cast in form_driver_w() to fix ARM build (patch by Xin Li).
+ + add logic to win_driver.c to save/restore screen contents when not
+ allocating a console-buffer (cf: 20140215).
+
20140301
+ clarify error-returns from newwin (report by Ruslan Nabioullin).
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: dist.mk,v 1.974 2014/03/01 14:32:51 tom Exp $
+# $Id: dist.mk,v 1.975 2014/03/08 19:20:13 tom Exp $
# Makefile for creating ncurses distributions.
#
# This only needs to be used directly as a makefile by developers, but
# These define the major/minor/patch versions of ncurses.
NCURSES_MAJOR = 5
NCURSES_MINOR = 9
-NCURSES_PATCH = 20140301
+NCURSES_PATCH = 20140308
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
#include "form.priv.h"
-MODULE_ID("$Id: frm_driver.c,v 1.110 2014/02/10 00:42:48 tom Exp $")
+MODULE_ID("$Id: frm_driver.c,v 1.111 2014/03/08 22:08:20 Xin.Li Exp $")
/*----------------------------------------------------------------------------
This is the core module of the form library. It contains the majority
const Binding_Info *BI = (Binding_Info *) 0;
int res = E_UNKNOWN_COMMAND;
- T((T_CALLED("form_driver(%p,%d)"), (void *)form, (int) c));
+ T((T_CALLED("form_driver(%p,%d)"), (void *)form, (int)c));
if (!form)
RETURN(E_BAD_ARGUMENT);
assert(form->page);
- if (c == FIRST_ACTIVE_MAGIC)
+ if (c == (wchar_t)FIRST_ACTIVE_MAGIC)
{
form->current = _nc_First_Active_Field(form);
RETURN(E_OK);
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: ncurses.3x,v 1.112 2013/07/20 19:29:59 tom Exp $
+.\" $Id: ncurses.3x,v 1.115 2014/03/08 22:07:02 tom Exp $
.hy 0
.TH ncurses 3X ""
.ie \n(.g .ds `` \(lq
runtime behavior of the \fBncurses\fR library.
The most important ones have been already discussed in detail.
.TP 5
-BAUDRATE
-The debugging library checks this environment variable when the application
-has redirected output to a file.
-The variable's numeric value is used for the baudrate.
-If no value is found, \fBncurses\fR uses 9600.
-This allows testers to construct repeatable test-cases
-that take into account costs that depend on baudrate.
-.TP 5
CC
When set, change occurrences of the command_character
(i.e., the \fBcmdch\fP capability)
the C compiler's name, \fBncurses\fR ignores it if it does not happen to
be a single character.
.TP 5
+BAUDRATE
+The debugging library checks this environment variable when the application
+has redirected output to a file.
+The variable's numeric value is used for the baudrate.
+If no value is found, \fBncurses\fR uses 9600.
+This allows testers to construct repeatable test-cases
+that take into account costs that depend on baudrate.
+.TP 5
COLUMNS
Specify the width of the screen in characters.
Applications running in a windowing environment usually are able to
To make it green-on-black, set it to "2,0".
Any positive value from zero to the terminfo \fBmax_colors\fR value is allowed.
.TP 5
+NCURSES_CONSOLE2
+This applies only to the MinGW port of ncurses.
+.IP
+The \fBConsole2\fP program's handling of the Microsoft Console API call
+\fBCreateConsoleScreenBuffer\fP is defective.
+Applications which use this will hang.
+However, it is possible to simulate the action of this call by
+mapping coordinates,
+explicitly saving and restoring the original screen contents.
+Setting the environment variable \fBNCGDB\fP has the same effect.
+.TP 5
NCURSES_GPM_TERMS
This applies only to ncurses configured to use the GPM interface.
.IP
to allow applications to be built using either library
from the same set of headers.
.TP 5
+\-\-with\-pthread
+The configure script renames the library.
+All of the library names have a "t" appended to them
+(before any "w" added by \fB\-\-enable\-widec\fP).
+.IP
+The global variables such as \fBLINES\fP are replaced by macros to
+allow read-only access.
+At the same time, setter-functions are provided to set these values.
+Some applications (very few) may require changes to work with this convention.
+.TP 5
\-\-with\-shared
.TP
\-\-with\-normal
/****************************************************************************
- * Copyright (c) 1998-2006,2009 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2009,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include <curses.priv.h>
-MODULE_ID("$Id: define_key.c,v 1.20 2009/11/28 22:53:17 tom Exp $")
+MODULE_ID("$Id: define_key.c,v 1.21 2014/03/08 20:32:59 tom Exp $")
NCURSES_EXPORT(int)
NCURSES_SP_NAME(define_key) (NCURSES_SP_DCLx const char *str, int keycode)
unsigned ukey = (unsigned) keycode;
#ifdef USE_TERM_DRIVER
-#define CallHasKey(keycode) CallDriver_1(SP_PARM, kyExist, keycode)
+#define CallHasKey(keycode) CallDriver_1(SP_PARM, td_kyExist, keycode)
#else
#define CallHasKey(keycode) NCURSES_SP_NAME(has_key)(NCURSES_SP_ARGx keycode)
#endif
/****************************************************************************
- * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2012,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include <curses.priv.h>
-MODULE_ID("$Id: keyok.c,v 1.13 2012/11/18 02:14:35 tom Exp $")
+MODULE_ID("$Id: keyok.c,v 1.14 2014/03/08 20:32:59 tom Exp $")
/*
* Enable (or disable) ncurses' interpretation of a keycode by adding (or
if (HasTerminal(SP_PARM)) {
T((T_CALLED("keyok(%p, %d,%d)"), (void *) SP_PARM, c, flag));
#ifdef USE_TERM_DRIVER
- code = CallDriver_2(sp, kyOk, c, flag);
+ code = CallDriver_2(sp, td_kyOk, c, flag);
#else
T((T_CALLED("keyok(%d,%d)"), c, flag));
if (c >= 0) {
/****************************************************************************
- * Copyright (c) 1998-2009,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_beep.c,v 1.16 2013/01/12 17:26:25 tom Exp $")
+MODULE_ID("$Id: lib_beep.c,v 1.17 2014/03/08 20:32:59 tom Exp $")
/*
* beep()
#ifdef USE_TERM_DRIVER
if (SP_PARM != 0)
- res = CallDriver_1(SP_PARM, doBeepOrFlash, TRUE);
+ res = CallDriver_1(SP_PARM, td_doBeepOrFlash, TRUE);
#else
/* FIXME: should make sure that we are not in altchar mode */
if (cur_term == 0) {
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_color.c,v 1.109 2014/02/01 22:22:30 tom Exp $")
+MODULE_ID("$Id: lib_color.c,v 1.110 2014/03/08 20:04:44 tom Exp $")
#ifdef USE_TERM_DRIVER
#define CanChange InfoOf(SP_PARM).canchange
set_background_color(NCURSES_SP_DCLx int bg, NCURSES_SP_OUTC outc)
{
#ifdef USE_TERM_DRIVER
- CallDriver_3(SP_PARM, color, FALSE, bg, outc);
+ CallDriver_3(SP_PARM, td_color, FALSE, bg, outc);
#else
if (set_a_background) {
TPUTS_TRACE("set_a_background");
set_foreground_color(NCURSES_SP_DCLx int fg, NCURSES_SP_OUTC outc)
{
#ifdef USE_TERM_DRIVER
- CallDriver_3(SP_PARM, color, TRUE, fg, outc);
+ CallDriver_3(SP_PARM, td_color, TRUE, fg, outc);
#else
if (set_a_foreground) {
TPUTS_TRACE("set_a_foreground");
reset_color_pair(NCURSES_SP_DCL0)
{
#ifdef USE_TERM_DRIVER
- return CallDriver(SP_PARM, rescol);
+ return CallDriver(SP_PARM, td_rescol);
#else
bool result = FALSE;
result = TRUE;
#ifdef USE_TERM_DRIVER
- result = CallDriver(SP_PARM, rescolors);
+ result = CallDriver(SP_PARM, td_rescolors);
#else
if (orig_colors != 0) {
NCURSES_PUTP2("orig_colors", orig_colors);
SET_SCREEN_PAIR(SP_PARM, (chtype) (~0)); /* force attribute update */
#ifdef USE_TERM_DRIVER
- CallDriver_3(SP_PARM, initpair, pair, f, b);
+ CallDriver_3(SP_PARM, td_initpair, pair, f, b);
#else
if (initialize_pair && InPalette(f) && InPalette(b)) {
const color_t *tp = DefaultPalette;
}
#ifdef USE_TERM_DRIVER
- CallDriver_4(SP_PARM, initcolor, color, r, g, b);
+ CallDriver_4(SP_PARM, td_initcolor, color, r, g, b);
#else
NCURSES_PUTP2("initialize_color",
TPARM_4(initialize_color, color, r, g, b));
NCURSES_SP_OUTC outc)
{
#ifdef USE_TERM_DRIVER
- CallDriver_4(SP_PARM, docolor, old_pair, pair, reverse, outc);
+ CallDriver_4(SP_PARM, td_docolor, old_pair, pair, reverse, outc);
#else
NCURSES_COLOR_T fg = COLOR_DEFAULT;
NCURSES_COLOR_T bg = COLOR_DEFAULT;
/****************************************************************************
- * Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_dft_fgbg.c,v 1.26 2011/04/23 18:28:18 tom Exp $")
+MODULE_ID("$Id: lib_dft_fgbg.c,v 1.27 2014/03/08 20:32:59 tom Exp $")
/*
* Modify the behavior of color-pair 0 so that the library doesn't assume that
T((T_CALLED("assume_default_colors(%p,%d,%d)"), (void *) SP_PARM, fg, bg));
#ifdef USE_TERM_DRIVER
if (sp != 0)
- code = CallDriver_2(sp, defaultcolors, fg, bg);
+ code = CallDriver_2(sp, td_defaultcolors, fg, bg);
#else
if ((orig_pair || orig_colors) && !initialize_pair) {
/****************************************************************************
- * Copyright (c) 2008-2010,2012 Free Software Foundation, Inc. *
+ * Copyright (c) 2008-2012,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include <curses.priv.h>
-MODULE_ID("$Id: lib_driver.c,v 1.4 2012/09/22 19:32:46 tom Exp $")
+MODULE_ID("$Id: lib_driver.c,v 1.5 2014/03/08 20:32:59 tom Exp $")
typedef struct DriverEntry {
const char *name;
continue;
}
}
- if (res->CanHandle(TCB, name, errret)) {
+ if (res->td_CanHandle(TCB, name, errret)) {
use = res;
break;
}
NCURSES_SP_NAME(has_key) (SCREEN *sp, int keycode)
{
T((T_CALLED("has_key(%p, %d)"), (void *) sp, keycode));
- returnCode(IsValidTIScreen(sp) ? CallDriver_1(sp, kyExist, keycode) : FALSE);
+ returnCode(IsValidTIScreen(sp) ? CallDriver_1(sp, td_kyExist, keycode) : FALSE);
}
NCURSES_EXPORT(int)
int code = ERR;
if (0 != TerminalOf(sp))
- code = CallDriver_2(sp, print, data, len);
+ code = CallDriver_2(sp, td_print, data, len);
return (code);
}
T((T_CALLED("doupdate(%p)"), (void *) sp));
if (IsValidScreen(sp))
- code = CallDriver(sp, update);
+ code = CallDriver(sp, td_update);
returnCode(code);
}
TR(TRACE_CALLS | TRACE_MOVE, (T_CALLED("mvcur(%p,%d,%d,%d,%d)"),
(void *) sp, yold, xold, ynew, xnew));
if (HasTerminal(sp)) {
- code = CallDriver_4(sp, hwcur, yold, xold, ynew, xnew);
+ code = CallDriver_4(sp, td_hwcur, yold, xold, ynew, xnew);
}
returnCode(code);
}
/****************************************************************************
- * Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2009,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include <curses.priv.h>
-MODULE_ID("$Id: lib_endwin.c,v 1.22 2009/10/24 22:02:14 tom Exp $")
+MODULE_ID("$Id: lib_endwin.c,v 1.23 2014/03/08 20:32:59 tom Exp $")
NCURSES_EXPORT(int)
NCURSES_SP_NAME(endwin) (NCURSES_SP_DCL0)
TERMINAL_CONTROL_BLOCK *TCB = TCBOf(SP_PARM);
SP_PARM->_endwin = TRUE;
- if (TCB && TCB->drv && TCB->drv->scexit)
- TCB->drv->scexit(SP_PARM);
+ if (TCB && TCB->drv && TCB->drv->td_scexit)
+ TCB->drv->td_scexit(SP_PARM);
#else
SP_PARM->_endwin = TRUE;
SP_PARM->_mouse_wrap(SP_PARM);
/****************************************************************************
- * Copyright (c) 1998-2011,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_flash.c,v 1.13 2013/01/12 17:26:07 tom Exp $")
+MODULE_ID("$Id: lib_flash.c,v 1.14 2014/03/08 20:32:59 tom Exp $")
/*
* flash()
T((T_CALLED("flash(%p)"), (void *) SP_PARM));
#ifdef USE_TERM_DRIVER
if (SP_PARM != 0)
- res = CallDriver_1(SP_PARM, doBeepOrFlash, FALSE);
+ res = CallDriver_1(SP_PARM, td_doBeepOrFlash, FALSE);
#else
if (HasTerminal(SP_PARM)) {
/* FIXME: should make sure that we are not in altchar mode */
/****************************************************************************
- * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include <curses.priv.h>
-MODULE_ID("$Id: lib_getch.c,v 1.126 2013/02/16 18:30:37 tom Exp $")
+MODULE_ID("$Id: lib_getch.c,v 1.127 2014/03/08 20:32:59 tom Exp $")
#include <fifo_defs.h>
int rc;
#ifdef USE_TERM_DRIVER
- rc = TCBOf(sp)->drv->testmouse(TCBOf(sp), delay EVENTLIST_2nd(evl));
+ rc = TCBOf(sp)->drv->td_testmouse(TCBOf(sp), delay EVENTLIST_2nd(evl));
#else
#if USE_SYSMOUSE
if ((sp->_mouse_type == M_SYSMOUSE)
{ /* Can block... */
#ifdef USE_TERM_DRIVER
int buf;
- n = CallDriver_1(sp, read, &buf);
+ n = CallDriver_1(sp, td_read, &buf);
ch = buf;
#else
unsigned char c2 = 0;
/****************************************************************************
- * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_mouse.c,v 1.141 2013/09/21 19:09:19 tom Exp $")
+MODULE_ID("$Id: lib_mouse.c,v 1.142 2014/03/08 20:32:59 tom Exp $")
#include <tic.h>
#endif /* USE_SYSMOUSE */
#ifdef USE_TERM_DRIVER
- CallDriver(sp, initmouse);
+ CallDriver(sp, td_initmouse);
#else
/* we know how to recognize mouse events under "xterm" */
if (key_mouse != 0) {
/****************************************************************************
- * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include <tic.h>
-MODULE_ID("$Id: lib_newterm.c,v 1.90 2013/09/28 21:02:56 tom Exp $")
+MODULE_ID("$Id: lib_newterm.c,v 1.91 2014/03/08 20:32:59 tom Exp $")
#ifdef USE_TERM_DRIVER
#define NumLabels InfoOf(SP_PARM).numlabels
/* compute movement costs so we can do better move optimization */
#ifdef USE_TERM_DRIVER
- TCBOf(SP_PARM)->drv->scinit(SP_PARM);
+ TCBOf(SP_PARM)->drv->td_scinit(SP_PARM);
#else /* ! USE_TERM_DRIVER */
/*
* Check for mismatched graphic-rendition capabilities. Most SVr4
/****************************************************************************
- * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_set_term.c,v 1.148 2013/08/31 13:33:06 tom Exp $")
+MODULE_ID("$Id: lib_set_term.c,v 1.149 2014/03/08 20:32:59 tom Exp $")
#ifdef USE_TERM_DRIVER
#define MaxColors InfoOf(sp).maxcolors
slines = 1;
SET_LINES(slines);
#ifdef USE_TERM_DRIVER
- CallDriver(sp, setfilter);
+ CallDriver(sp, td_setfilter);
#else
clear_screen = 0;
cursor_down = parm_down_cursor = 0;
/****************************************************************************
- * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_slkrefr.c,v 1.29 2013/01/12 17:25:48 tom Exp $")
+MODULE_ID("$Id: lib_slkrefr.c,v 1.30 2014/03/08 20:32:59 tom Exp $")
#ifdef USE_TERM_DRIVER
#define NumLabels InfoOf(SP_PARM).numlabels
if (slk->ent[i].visible) {
if (numlab > 0 && SLK_STDFMT(fmt)) {
#ifdef USE_TERM_DRIVER
- CallDriver_2(sp, hwlabel, i + 1, slk->ent[i].form_text);
+ CallDriver_2(sp, td_hwlabel, i + 1, slk->ent[i].form_text);
#else
if (i < num_labels) {
NCURSES_PUTP2("plab_norm",
if (numlab > 0) {
#ifdef USE_TERM_DRIVER
- CallDriver_1(sp, hwlabelOnOff, slk->hidden ? FALSE : TRUE);
+ CallDriver_1(sp, td_hwlabelOnOff, slk->hidden ? FALSE : TRUE);
#else
if (slk->hidden) {
NCURSES_PUTP2("label_off", label_off);
/****************************************************************************
- * Copyright (c) 1998-2009,2011 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: resizeterm.c,v 1.45 2012/07/07 17:07:23 tom Exp $")
+MODULE_ID("$Id: resizeterm.c,v 1.46 2014/03/08 20:32:59 tom Exp $")
/*
* If we're trying to be reentrant, do not want any local statics.
screen_columns(SP_PARM) = (NCURSES_SIZE_T) ToCols;
#ifdef USE_TERM_DRIVER
- CallDriver_2(SP_PARM, setsize, ToLines, ToCols);
+ CallDriver_2(SP_PARM, td_setsize, ToLines, ToCols);
#else
lines = (NCURSES_SIZE_T) ToLines;
columns = (NCURSES_SIZE_T) ToCols;
****************************************************************************/
/*
- * $Id: curses.priv.h,v 1.530 2014/02/01 22:09:27 tom Exp $
+ * $Id: curses.priv.h,v 1.531 2014/03/08 19:58:54 tom Exp $
*
* curses.priv.h
*
#define USE_SETBUF_0 0
-#define NC_BUFFERED(sp,flag) NCURSES_SP_NAME(_nc_set_buffer)(NCURSES_SP_ARGx sp->_ofp, flag)
-
#define NC_OUTPUT(sp) ((sp != 0) ? sp->_ofp : stdout)
/*
typedef struct term_driver {
bool isTerminfo;
- bool (*CanHandle)(struct DriverTCB*, const char*, int*);
- void (*init)(struct DriverTCB*);
- void (*release)(struct DriverTCB*);
- int (*size)(struct DriverTCB*, int* Line, int *Cols);
- int (*sgmode)(struct DriverTCB*, int setFlag, TTY*);
- chtype (*conattr)(struct DriverTCB*);
- int (*hwcur)(struct DriverTCB*, int yold, int xold, int y, int x);
- int (*mode)(struct DriverTCB*, int progFlag, int defFlag);
- bool (*rescol)(struct DriverTCB*);
- bool (*rescolors)(struct DriverTCB*);
- void (*color)(struct DriverTCB*, int fore, int color, int(*)(SCREEN*, int));
- int (*doBeepOrFlash)(struct DriverTCB*, int);
- void (*initpair)(struct DriverTCB*, int, int, int);
- void (*initcolor)(struct DriverTCB*, int, int, int, int);
- void (*docolor)(struct DriverTCB*, int, int, int, int(*)(SCREEN*, int));
- void (*initmouse)(struct DriverTCB*);
- int (*testmouse)(struct DriverTCB*, int EVENTLIST_2nd(_nc_eventlist*));
- void (*setfilter)(struct DriverTCB*);
- void (*hwlabel)(struct DriverTCB*, int, char*);
- void (*hwlabelOnOff)(struct DriverTCB*, int);
- int (*update)(struct DriverTCB*);
- int (*defaultcolors)(struct DriverTCB*, int, int);
- int (*print)(struct DriverTCB*, char*, int);
- int (*getsize)(struct DriverTCB*, int*, int*);
- int (*setsize)(struct DriverTCB*, int, int);
- void (*initacs)(struct DriverTCB*, chtype*, chtype*);
- void (*scinit)(SCREEN *);
- void (*scexit)(SCREEN *);
- int (*twait)(struct DriverTCB*, int, int, int* EVENTLIST_2nd(_nc_eventlist*));
- int (*read)(struct DriverTCB*, int*);
- int (*nap)(struct DriverTCB*, int);
- int (*kpad)(struct DriverTCB*, int);
- int (*kyOk)(struct DriverTCB*, int, int);
- bool (*kyExist)(struct DriverTCB*, int);
+ bool (*td_CanHandle)(struct DriverTCB*, const char*, int*);
+ void (*td_init)(struct DriverTCB*);
+ void (*td_release)(struct DriverTCB*);
+ int (*td_size)(struct DriverTCB*, int* Line, int *Cols);
+ int (*td_sgmode)(struct DriverTCB*, int setFlag, TTY*);
+ chtype (*td_conattr)(struct DriverTCB*);
+ int (*td_hwcur)(struct DriverTCB*, int yold, int xold, int y, int x);
+ int (*td_mode)(struct DriverTCB*, int progFlag, int defFlag);
+ bool (*td_rescol)(struct DriverTCB*);
+ bool (*td_rescolors)(struct DriverTCB*);
+ void (*td_color)(struct DriverTCB*, int fore, int color, int(*)(SCREEN*, int));
+ int (*td_doBeepOrFlash)(struct DriverTCB*, int);
+ void (*td_initpair)(struct DriverTCB*, int, int, int);
+ void (*td_initcolor)(struct DriverTCB*, int, int, int, int);
+ void (*td_docolor)(struct DriverTCB*, int, int, int, int(*)(SCREEN*, int));
+ void (*td_initmouse)(struct DriverTCB*);
+ int (*td_testmouse)(struct DriverTCB*, int EVENTLIST_2nd(_nc_eventlist*));
+ void (*td_setfilter)(struct DriverTCB*);
+ void (*td_hwlabel)(struct DriverTCB*, int, char*);
+ void (*td_hwlabelOnOff)(struct DriverTCB*, int);
+ int (*td_update)(struct DriverTCB*);
+ int (*td_defaultcolors)(struct DriverTCB*, int, int);
+ int (*td_print)(struct DriverTCB*, char*, int);
+ int (*td_getsize)(struct DriverTCB*, int*, int*);
+ int (*td_setsize)(struct DriverTCB*, int, int);
+ void (*td_initacs)(struct DriverTCB*, chtype*, chtype*);
+ void (*td_scinit)(SCREEN *);
+ void (*td_scexit)(SCREEN *);
+ int (*td_twait)(struct DriverTCB*, int, int, int* EVENTLIST_2nd(_nc_eventlist*));
+ int (*td_read)(struct DriverTCB*, int*);
+ int (*td_nap)(struct DriverTCB*, int);
+ int (*td_kpad)(struct DriverTCB*, int);
+ int (*td_kyOk)(struct DriverTCB*, int, int);
+ bool (*td_kyExist)(struct DriverTCB*, int);
} TERM_DRIVER;
typedef struct DriverTCB
/****************************************************************************
- * Copyright (c) 1998-2010,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_acs.c,v 1.44 2013/01/12 17:24:42 tom Exp $")
+MODULE_ID("$Id: lib_acs.c,v 1.45 2014/03/08 20:32:59 tom Exp $")
#if BROKEN_LINKER || USE_REENTRANT
#define MyBuffer _nc_prescreen.real_acs_map
real_map['E'] = '+'; /* large plus or crossover */
#ifdef USE_TERM_DRIVER
- CallDriver_2(SP_PARM, initacs, real_map, fake_map);
+ CallDriver_2(SP_PARM, td_initacs, real_map, fake_map);
#else
if (ena_acs != NULL) {
NCURSES_PUTP2("ena_acs", ena_acs);
/****************************************************************************
- * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include <curses.priv.h>
#include <termcap.h> /* ospeed */
-MODULE_ID("$Id: lib_cur_term.c,v 1.32 2013/10/28 00:10:27 tom Exp $")
+MODULE_ID("$Id: lib_cur_term.c,v 1.33 2014/03/08 20:32:59 tom Exp $")
#undef CUR
#define CUR termp->type.
#endif
#ifdef USE_TERM_DRIVER
if (TCB->drv)
- TCB->drv->release(TCB);
+ TCB->drv->td_release(TCB);
#endif
free(termp);
/****************************************************************************
- * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2012,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#endif
#endif
-MODULE_ID("$Id: lib_napms.c,v 1.23 2012/06/30 22:08:24 tom Exp $")
+MODULE_ID("$Id: lib_napms.c,v 1.24 2014/03/08 20:32:59 tom Exp $")
NCURSES_EXPORT(int)
NCURSES_SP_NAME(napms) (NCURSES_SP_DCLx int ms)
#ifdef USE_TERM_DRIVER
if (HasTerminal(SP_PARM)) {
- CallDriver_1(SP_PARM, nap, ms);
+ CallDriver_1(SP_PARM, td_nap, ms);
}
#else /* !USE_TERM_DRIVER */
#if NCURSES_SP_FUNCS
/****************************************************************************
- * Copyright (c) 1998-2011,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_options.c,v 1.76 2013/12/14 22:23:58 tom Exp $")
+MODULE_ID("$Id: lib_options.c,v 1.77 2014/03/08 20:32:59 tom Exp $")
NCURSES_EXPORT(int)
idlok(WINDOW *win, bool flag)
#endif
{
#ifdef USE_TERM_DRIVER
- rc = CallDriver_1(sp, kpad, flag);
+ rc = CallDriver_1(sp, td_kpad, flag);
if (rc == OK)
sp->_keypad_on = flag;
#else
/****************************************************************************
- * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include <locale.h>
#endif
-MODULE_ID("$Id: lib_setup.c,v 1.158 2013/06/22 19:59:08 tom Exp $")
+MODULE_ID("$Id: lib_setup.c,v 1.159 2014/03/08 20:32:59 tom Exp $")
/****************************************************************************
*
TCB = (TERMINAL_CONTROL_BLOCK *) termp;
my_tabsize = TCB->info.tabsize;
- TCB->drv->size(TCB, linep, colp);
+ TCB->drv->td_size(TCB, linep, colp);
#if USE_REENTRANT
if (sp != 0) {
assert(sp != 0);
- CallDriver_2(sp, getsize, &old_lines, &old_cols);
+ CallDriver_2(sp, td_getsize, &old_lines, &old_cols);
#else
TERMINAL *termp = cur_term;
#ifdef USE_TERM_DRIVER
*tp = termp;
NCURSES_SP_NAME(set_curterm) (sp, termp);
- TCB->drv->init(TCB);
+ TCB->drv->td_init(TCB);
#else
sp = SP;
#endif
/****************************************************************************
- * Copyright (c) 1998-2010,2012 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2012,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_ttyflags.c,v 1.28 2012/01/21 19:21:29 KO.Myung-Hun Exp $")
+MODULE_ID("$Id: lib_ttyflags.c,v 1.29 2014/03/08 20:32:59 tom Exp $")
NCURSES_EXPORT(int)
NCURSES_SP_NAME(_nc_get_tty_mode) (NCURSES_SP_DCLx TTY * buf)
result = ERR;
} else {
#ifdef USE_TERM_DRIVER
- result = CallDriver_2(SP_PARM, sgmode, FALSE, buf);
+ result = CallDriver_2(SP_PARM, td_sgmode, FALSE, buf);
#else
for (;;) {
if (GET_TTY(termp->Filedes, buf) != 0) {
result = ERR;
} else {
#ifdef USE_TERM_DRIVER
- result = CallDriver_2(SP_PARM, sgmode, TRUE, buf);
+ result = CallDriver_2(SP_PARM, td_sgmode, TRUE, buf);
#else
for (;;) {
if ((SET_TTY(termp->Filedes, buf) != 0)
if (termp != 0) {
#ifdef USE_TERM_DRIVER
- rc = CallDriver_2(SP_PARM, mode, FALSE, TRUE);
+ rc = CallDriver_2(SP_PARM, td_mode, FALSE, TRUE);
#else
/*
* If XTABS was on, remove the tab and backtab capabilities.
if (termp != 0) {
#ifdef USE_TERM_DRIVER
- rc = CallDriver_2(SP_PARM, mode, TRUE, TRUE);
+ rc = CallDriver_2(SP_PARM, td_mode, TRUE, TRUE);
#else
/*
* Turn off the XTABS bit in the tty structure if it was on.
if (termp != 0) {
#ifdef USE_TERM_DRIVER
- rc = CallDriver_2(SP_PARM, mode, TRUE, FALSE);
+ rc = CallDriver_2(SP_PARM, td_mode, TRUE, FALSE);
#else
if (_nc_set_tty_mode(&termp->Nttyb) == OK) {
if (SP_PARM) {
if (SP_PARM->_keypad_on)
_nc_keypad(SP_PARM, TRUE);
- NC_BUFFERED(SP_PARM, TRUE);
}
rc = OK;
}
if (termp != 0) {
#ifdef USE_TERM_DRIVER
- rc = CallDriver_2(SP_PARM, mode, FALSE, FALSE);
+ rc = CallDriver_2(SP_PARM, td_mode, FALSE, FALSE);
#else
if (SP_PARM) {
_nc_keypad(SP_PARM, FALSE);
_nc_flush();
- NC_BUFFERED(SP_PARM, FALSE);
}
rc = _nc_set_tty_mode(&termp->Ottyb);
#endif
/****************************************************************************
- * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include <tic.h>
-MODULE_ID("$Id: read_entry.c,v 1.126 2013/12/15 00:35:36 tom Exp $")
+MODULE_ID("$Id: read_entry.c,v 1.127 2014/03/08 22:07:31 Xin.Li Exp $")
#define TYPE_CALLOC(type,elts) typeCalloc(type, (unsigned)(elts))
#define even_boundary(value) \
if ((value) % 2 != 0) Read(buf, 1)
+#endif
NCURSES_EXPORT(void)
_nc_init_termtype(TERMTYPE *const tp)
tp->Strings[i] = ABSENT_STRING;
}
+#if NCURSES_USE_DATABASE
/*
* Return TGETENT_YES if read, TGETENT_NO if not found or garbled.
*/
/****************************************************************************
- * Copyright (c) 2008-2012,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 2008-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
# endif
#endif
-MODULE_ID("$Id: tinfo_driver.c,v 1.32 2013/08/31 15:22:46 tom Exp $")
+MODULE_ID("$Id: tinfo_driver.c,v 1.33 2014/03/08 20:33:38 tom Exp $")
/*
* SCO defines TIOCGSIZE and the corresponding struct. Other systems (SunOS,
if (sp) {
if (sp->_keypad_on)
_nc_keypad(sp, TRUE);
- NC_BUFFERED(sp, TRUE);
}
code = OK;
}
if (sp) {
_nc_keypad(sp, FALSE);
NCURSES_SP_NAME(_nc_flush) (sp);
- NC_BUFFERED(sp, FALSE);
}
code = drv_sgmode(TCB, TRUE, &(_term->Ottyb));
}
* baudrate.
*/
if (isatty(trm->Filedes)) {
- TCB->drv->mode(TCB, TRUE, TRUE);
+ TCB->drv->td_mode(TCB, TRUE, TRUE);
}
}
} else
#endif
{
- rc = TCBOf(sp)->drv->twait(TCBOf(sp),
- TWAIT_MASK,
- delay,
- (int *) 0
- EVENTLIST_2nd(evl));
+ rc = TCBOf(sp)->drv->td_twait(TCBOf(sp),
+ TWAIT_MASK,
+ delay,
+ (int *) 0
+ EVENTLIST_2nd(evl));
#if USE_SYSMOUSE
if ((sp->_mouse_type == M_SYSMOUSE)
&& (sp->_sysmouse_head < sp->_sysmouse_tail)
/****************************************************************************
- * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_mvcur.c,v 1.133 2013/05/25 23:59:41 tom Exp $")
+MODULE_ID("$Id: lib_mvcur.c,v 1.134 2014/03/08 20:32:59 tom Exp $")
#define WANT_CHAR(sp, y, x) NewScreen(sp)->_line[y].text[x] /* desired state */
baudrate();
_nc_mvcur_init();
- NC_BUFFERED(FALSE);
(void) puts("The mvcur tester. Type ? for help");
/****************************************************************************
- * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#endif
#undef CUR
-MODULE_ID("$Id: lib_twait.c,v 1.67 2013/02/18 09:22:27 tom Exp $")
+MODULE_ID("$Id: lib_twait.c,v 1.68 2014/03/08 20:32:59 tom Exp $")
static long
_nc_gettime(TimeType * t0, int first)
if (first) {
*t0 = t1;
}
- res = (t1 - *t0) * 1000;
+ res = (long) ((t1 - *t0) * 1000);
#endif
TR(TRACE_IEVENT, ("%s time: %ld msec", first ? "get" : "elapsed", res));
return res;
/****************************************************************************
- * Copyright (c) 1998-2011,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#define CUR SP_TERMTYPE
#endif
-MODULE_ID("$Id: lib_vidattr.c,v 1.67 2013/08/31 20:08:59 tom Exp $")
+MODULE_ID("$Id: lib_vidattr.c,v 1.68 2014/03/08 20:32:59 tom Exp $")
#define doPut(mode) \
TPUTS_TRACE(#mode); \
if (HasTerminal(SP_PARM)) {
#ifdef USE_TERM_DRIVER
- attrs = CallDriver(SP_PARM, conattr);
+ attrs = CallDriver(SP_PARM, td_conattr);
#else /* ! USE_TERM_DRIVER */
if (enter_alt_charset_mode)
/****************************************************************************
* Author: Juergen Pfeifer *
+ * and: Thomas E. Dickey *
****************************************************************************/
/*
* TODO - GetMousePos(POINT * result) from ntconio.c
* TODO - implement nodelay
- * TODO - when $NCGDB is set, implement non-buffered output, like PDCurses
*/
#include <curses.priv.h>
#define CUR my_term.type.
-MODULE_ID("$Id: win_driver.c,v 1.24 2014/02/23 01:23:29 tom Exp $")
+MODULE_ID("$Id: win_driver.c,v 1.28 2014/03/08 21:44:53 tom Exp $")
#define WINMAGIC NCDRV_MAGIC(NCDRV_WINCONSOLE)
DWORD map[MAPSIZE];
DWORD rmap[MAPSIZE];
WORD pairs[NUMPAIRS];
- bool buffered;
+ bool buffered; /* normally allocate console-buffer */
+ bool window_only; /* ..if not, we save buffer or window-only */
COORD origin;
CHAR_INFO *save_screen;
} Properties;
if (p > 0 && p < NUMPAIRS && TCB != 0 && sp != 0) {
WORD a;
a = PropOf(TCB)->pairs[p];
- res = (res & 0xff00) | a;
+ res = (WORD) ((res & 0xff00) | a);
}
}
- if (ch & A_REVERSE)
- res = ((res & 0xff00) | (((res & 0x07) << 4) | ((res & 0x70) >> 4)));
+ if (ch & A_REVERSE) {
+ res = (WORD) ((res & 0xff00) |
+ (((res & 0x07) << 4) |
+ ((res & 0x70) >> 4)));
+ }
- if (ch & A_STANDOUT)
- res = ((res & 0xff00) | (((res & 0x07) << 4) | ((res & 0x70) >> 4))
- | BACKGROUND_INTENSITY);
+ if (ch & A_STANDOUT) {
+ res = (WORD) ((res & 0xff00) |
+ (((res & 0x07) << 4) |
+ ((res & 0x70) >> 4)) |
+ BACKGROUND_INTENSITY);
+ }
if (ch & A_BOLD)
res |= FOREGROUND_INTENSITY;
}
}
+static bool
+restore_original_screen(TERMINAL_CONTROL_BLOCK * TCB)
+{
+ COORD bufferCoord;
+ SMALL_RECT writeRegion;
+ Properties *p = PropOf(TCB);
+ bool result = FALSE;
+
+ if (p->window_only) {
+ writeRegion.Top = p->SBI.srWindow.Top;
+ writeRegion.Left = p->SBI.srWindow.Left;
+ writeRegion.Bottom = p->SBI.srWindow.Bottom;
+ writeRegion.Right = p->SBI.srWindow.Right;
+ T(("... restoring window"));
+ } else {
+ writeRegion.Top = 0;
+ writeRegion.Left = 0;
+ writeRegion.Bottom = (SHORT) (p->SBI.dwSize.Y - 1);
+ writeRegion.Right = (SHORT) (p->SBI.dwSize.X - 1);
+ T(("... restoring entire buffer"));
+ }
+
+ bufferCoord.X = bufferCoord.Y = 0;
+
+ if (WriteConsoleOutput(TCB->hdl,
+ p->save_screen,
+ p->SBI.dwSize,
+ bufferCoord,
+ &writeRegion)) {
+ result = TRUE;
+ mvcur(-1, -1, LINES - 2, 0);
+ }
+ T(("... restore original screen contents %s", result ? "ok" : "err"));
+ return result;
+}
+
static int
drv_doupdate(TERMINAL_CONTROL_BLOCK * TCB)
{
CurScreen(sp)->_curx = NewScreen(sp)->_curx;
CurScreen(sp)->_cury = NewScreen(sp)->_cury;
- TCB->drv->hwcur(TCB,
- 0, 0,
- CurScreen(sp)->_cury, CurScreen(sp)->_curx);
+ TCB->drv->td_hwcur(TCB,
+ 0, 0,
+ CurScreen(sp)->_cury, CurScreen(sp)->_curx);
}
selectActiveHandle(TCB);
result = OK;
AssertTCB();
sp = TCB->csp;
+ T((T_CALLED("win32con::drv_mode(%p, prog=%d, def=%d)"), TCB, progFlag, defFlag));
PropOf(TCB)->progMode = progFlag;
PropOf(TCB)->lastOut = progFlag ? TCB->hdl : TCB->out;
SetConsoleActiveScreenBuffer(PropOf(TCB)->lastOut);
if (sp) {
if (sp->_keypad_on)
_nc_keypad(sp, TRUE);
- NC_BUFFERED(sp, TRUE);
}
code = OK;
}
if (sp) {
_nc_keypad(sp, FALSE);
NCURSES_SP_NAME(_nc_flush) (sp);
- NC_BUFFERED(sp, FALSE);
}
code = drv_sgmode(TCB, TRUE, &(_term->Ottyb));
+ if (!PropOf(TCB)->buffered) {
+ if (!restore_original_screen(TCB))
+ code = ERR;
+ }
}
}
bufferCoord,
&readRegion)) {
result = TRUE;
+ p->window_only = TRUE;
} else {
T((" error %#lx", (unsigned long) GetLastError()));
}
TCB->inp = GetStdHandle(STD_INPUT_HANDLE);
TCB->out = GetStdHandle(STD_OUTPUT_HANDLE);
- if (getenv("NCGDB")) {
+ if (getenv("NCGDB") || getenv("NCURSES_CONSOLE2")) {
TCB->hdl = TCB->out;
buffered = FALSE;
} else {
returnVoid;
} else if ((TCB->prop = typeCalloc(Properties, 1)) != 0) {
PropOf(TCB)->buffered = buffered;
+ PropOf(TCB)->window_only = FALSE;
if (!get_SBI(TCB)) {
FreeAndNull(TCB->prop); /* force error in drv_size */
returnVoid;
PropOf(TCB)->rmap[i] = PropOf(TCB)->map[i] = (DWORD) keylist[i];
else
PropOf(TCB)->rmap[i] = PropOf(TCB)->map[i] =
- GenMap((VK_F1 + (i - N_INI)), (KEY_F(1) + (i - N_INI)));
+ (DWORD) GenMap((VK_F1 + (i - N_INI)), (KEY_F(1) + (i - N_INI)));
}
qsort(PropOf(TCB)->map,
(size_t) (MAPSIZE),
if (sp->_drv_mouse_head < sp->_drv_mouse_tail) {
rc = TW_MOUSE;
} else {
- rc = TCBOf(sp)->drv->twait(TCBOf(sp),
- TWAIT_MASK,
- delay,
- (int *) 0
- EVENTLIST_2nd(evl));
+ rc = TCBOf(sp)->drv->td_twait(TCBOf(sp),
+ TWAIT_MASK,
+ delay,
+ (int *) 0
+ EVENTLIST_2nd(evl));
}
return rc;
-ncurses6 (5.9-20140301) unstable; urgency=low
+ncurses6 (5.9-20140308) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 01 Mar 2014 09:32:51 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 08 Mar 2014 14:20:13 -0500
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (5.9-20140301) unstable; urgency=low
+ncurses6 (5.9-20140308) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 01 Mar 2014 09:32:51 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 08 Mar 2014 14:20:13 -0500
ncurses6 (5.9-20131005) unstable; urgency=low
-ncurses6 (5.9-20140301) unstable; urgency=low
+ncurses6 (5.9-20140308) unstable; urgency=low
* latest weekly patch
- -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 01 Mar 2014 09:32:51 -0500
+ -- Thomas E. Dickey <dickey@invisible-island.net> Sat, 08 Mar 2014 14:20:13 -0500
ncurses6 (5.9-20120608) unstable; urgency=low
-; $Id: mingw-ncurses.nsi,v 1.29 2014/03/01 14:32:51 tom Exp $\r
+; $Id: mingw-ncurses.nsi,v 1.30 2014/03/08 19:20:13 tom Exp $\r
\r
; TODO add examples\r
; TODO bump ABI to 6\r
!define VERSION_MAJOR "5"\r
!define VERSION_MINOR "9"\r
!define VERSION_YYYY "2014"\r
-!define VERSION_MMDD "0301"\r
+!define VERSION_MMDD "0308"\r
!define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}\r
\r
!define MY_ABI "5"\r
Summary: shared libraries for terminal handling
Name: mingw32-ncurses6
Version: 5.9
-Release: 20140301
+Release: 20140308
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz
Summary: shared libraries for terminal handling
Name: ncurses6
Version: 5.9
-Release: 20140301
+Release: 20140308
License: X11
Group: Development/Libraries
Source: ncurses-%{version}-%{release}.tgz