Update to ncurses-6.0

Change-Id: I98ab2ea8a5e13cca9f8b7cf6277b9b14a4da4299
diff --git a/ncurses/widechar/lib_wacs.c b/ncurses/widechar/lib_wacs.c
index fe893b4..dc3af21 100644
--- a/ncurses/widechar/lib_wacs.c
+++ b/ncurses/widechar/lib_wacs.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2002,2006 Free Software Foundation, Inc.                   *
+ * Copyright (c) 2002-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            *
@@ -31,9 +31,8 @@
  ****************************************************************************/
 
 #include <curses.priv.h>
-#include <term.h>
 
-MODULE_ID("$Id: lib_wacs.c,v 1.7 2006/12/17 15:16:17 tom Exp $")
+MODULE_ID("$Id: lib_wacs.c,v 1.14 2014/02/23 01:21:08 tom Exp $")
 
 NCURSES_EXPORT_VAR(cchar_t) * _nc_wacs = 0;
 
@@ -42,7 +41,7 @@
 {
     /* *INDENT-OFF* */
     static const struct {
-	int	map;
+	unsigned map;
 	int	value[2];
     } table[] = {
 	/* VT100 symbols */
@@ -80,6 +79,30 @@
 	{ '{',	{ '*',	0x03c0 }},	/* greek pi */
 	{ '|',	{ '!',	0x2260 }},	/* not-equal */
 	{ '}',	{ 'f',	0x00a3 }},	/* pound-sterling symbol */
+	/* thick-line-drawing */
+	{ 'L',	{ '+',	0x250f }},	/* upper left corner */
+	{ 'M',	{ '+',	0x2517 }},	/* lower left corner */
+	{ 'K',	{ '+',	0x2513 }},	/* upper right corner */
+	{ 'J',	{ '+',	0x251b }},	/* lower right corner */
+	{ 'T',	{ '+',	0x2523 }},	/* tee pointing left */
+	{ 'U',	{ '+',	0x252b }},	/* tee pointing right */
+	{ 'V',	{ '+',	0x253b }},	/* tee pointing up */
+	{ 'W',	{ '+',	0x2533 }},	/* tee pointing down */
+	{ 'Q',	{ '-',	0x2501 }},	/* horizontal line */
+	{ 'X',	{ '|',	0x2503 }},	/* vertical line */
+	{ 'N',	{ '+',	0x254b }},	/* large plus or crossover */
+	/* double-line-drawing */
+	{ 'C',	{ '+',	0x2554 }},	/* upper left corner */
+	{ 'D',	{ '+',	0x255a }},	/* lower left corner */
+	{ 'B',	{ '+',	0x2557 }},	/* upper right corner */
+	{ 'A',	{ '+',	0x255d }},	/* lower right corner */
+	{ 'G',	{ '+',	0x2563 }},	/* tee pointing left */
+	{ 'F',	{ '+',	0x2560 }},	/* tee pointing right */
+	{ 'H',	{ '+',	0x2569 }},	/* tee pointing up */
+	{ 'I',	{ '+',	0x2566 }},	/* tee pointing down */
+	{ 'R',	{ '-',	0x2550 }},	/* horizontal line */
+	{ 'Y',	{ '|',	0x2551 }},	/* vertical line */
+	{ 'E',	{ '+',	0x256c }},	/* large plus or crossover */
     };
     /* *INDENT-ON* */
 
@@ -96,22 +119,24 @@
     T(("initializing WIDE-ACS map (Unicode is%s active)",
        active ? "" : " not"));
 
-    _nc_wacs = typeCalloc(cchar_t, ACS_LEN);
-    for (n = 0; n < SIZEOF(table); ++n) {
-	int wide = wcwidth(table[n].value[active]);
+    if ((_nc_wacs = typeCalloc(cchar_t, ACS_LEN)) != 0) {
 
-	m = table[n].map;
-	if (active && (wide == 1)) {
-	    SetChar(_nc_wacs[m], table[n].value[active], A_NORMAL);
-	} else if (acs_map[m] & A_ALTCHARSET) {
-	    SetChar(_nc_wacs[m], m, A_ALTCHARSET);
-	} else {
-	    SetChar(_nc_wacs[m], table[n].value[0], A_NORMAL);
+	for (n = 0; n < SIZEOF(table); ++n) {
+	    int wide = wcwidth((wchar_t) table[n].value[active]);
+
+	    m = table[n].map;
+	    if (active && (wide == 1)) {
+		SetChar(_nc_wacs[m], table[n].value[1], A_NORMAL);
+	    } else if (acs_map[m] & A_ALTCHARSET) {
+		SetChar(_nc_wacs[m], m, A_ALTCHARSET);
+	    } else {
+		SetChar(_nc_wacs[m], table[n].value[0], A_NORMAL);
+	    }
+
+	    T(("#%d, SetChar(%c, %#04x) = %s",
+	       n, m,
+	       table[n].value[active],
+	       _tracecchar_t(&_nc_wacs[m])));
 	}
-
-	T(("#%d, SetChar(%c, %#04x) = %s",
-	   n, m,
-	   table[n].value[active],
-	   _tracecchar_t(&_nc_wacs[m])));
     }
 }