1*4882a593SmuzhiyunFrom e7bbf72544ab62db9c92bfe7bd1155227e78c621 Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Andrew Borodin <aborodin@vmail.ru> 3*4882a593SmuzhiyunDate: Sat, 28 Aug 2021 11:46:53 +0300 4*4882a593SmuzhiyunSubject: [PATCH] Ticket #4200: fix FTBFS with ncurses build with 5*4882a593Smuzhiyun --disable-widec. 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunUpstream-Status: Accepted [https://github.com/MidnightCommander/mc/commit/e7bbf72544] 8*4882a593SmuzhiyunSigned-off-by: Andrew Borodin <aborodin@vmail.ru> 9*4882a593Smuzhiyun--- 10*4882a593Smuzhiyun lib/tty/tty-ncurses.c | 8 ++++++++ 11*4882a593Smuzhiyun lib/tty/tty-ncurses.h | 5 +++++ 12*4882a593Smuzhiyun lib/tty/tty-slang.h | 2 ++ 13*4882a593Smuzhiyun src/filemanager/boxes.c | 2 ++ 14*4882a593Smuzhiyun 4 files changed, 17 insertions(+) 15*4882a593Smuzhiyun 16*4882a593Smuzhiyundiff --git a/lib/tty/tty-ncurses.c b/lib/tty/tty-ncurses.c 17*4882a593Smuzhiyunindex f619c0a7bf31..13058a624208 100644 18*4882a593Smuzhiyun--- a/lib/tty/tty-ncurses.c 19*4882a593Smuzhiyun+++ b/lib/tty/tty-ncurses.c 20*4882a593Smuzhiyun@@ -560,6 +560,7 @@ tty_fill_region (int y, int x, int rows, int cols, unsigned char ch) 21*4882a593Smuzhiyun void 22*4882a593Smuzhiyun tty_colorize_area (int y, int x, int rows, int cols, int color) 23*4882a593Smuzhiyun { 24*4882a593Smuzhiyun+#ifdef ENABLE_SHADOWS 25*4882a593Smuzhiyun cchar_t *ctext; 26*4882a593Smuzhiyun wchar_t wch[10]; /* TODO not sure if the length is correct */ 27*4882a593Smuzhiyun attr_t attrs; 28*4882a593Smuzhiyun@@ -585,6 +586,13 @@ tty_colorize_area (int y, int x, int rows, int cols, int color) 29*4882a593Smuzhiyun } 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun g_free (ctext); 32*4882a593Smuzhiyun+#else 33*4882a593Smuzhiyun+ (void) y; 34*4882a593Smuzhiyun+ (void) x; 35*4882a593Smuzhiyun+ (void) rows; 36*4882a593Smuzhiyun+ (void) cols; 37*4882a593Smuzhiyun+ (void) color; 38*4882a593Smuzhiyun+#endif /* ENABLE_SHADOWS */ 39*4882a593Smuzhiyun } 40*4882a593Smuzhiyun 41*4882a593Smuzhiyun /* --------------------------------------------------------------------------------------------- */ 42*4882a593Smuzhiyundiff --git a/lib/tty/tty-ncurses.h b/lib/tty/tty-ncurses.h 43*4882a593Smuzhiyunindex d75df9533ab9..8feb17ccd045 100644 44*4882a593Smuzhiyun--- a/lib/tty/tty-ncurses.h 45*4882a593Smuzhiyun+++ b/lib/tty/tty-ncurses.h 46*4882a593Smuzhiyun@@ -30,6 +30,11 @@ 47*4882a593Smuzhiyun #define NCURSES_CONST const 48*4882a593Smuzhiyun #endif 49*4882a593Smuzhiyun 50*4882a593Smuzhiyun+/* do not draw shadows if NCurses is built with --disable-widec */ 51*4882a593Smuzhiyun+#if defined(NCURSES_WIDECHAR) && NCURSES_WIDECHAR 52*4882a593Smuzhiyun+#define ENABLE_SHADOWS 1 53*4882a593Smuzhiyun+#endif 54*4882a593Smuzhiyun+ 55*4882a593Smuzhiyun /*** typedefs(not structures) and defined constants **********************************************/ 56*4882a593Smuzhiyun 57*4882a593Smuzhiyun /*** enums ***************************************************************************************/ 58*4882a593Smuzhiyundiff --git a/lib/tty/tty-slang.h b/lib/tty/tty-slang.h 59*4882a593Smuzhiyunindex 5b12c6512853..eeaade388af4 100644 60*4882a593Smuzhiyun--- a/lib/tty/tty-slang.h 61*4882a593Smuzhiyun+++ b/lib/tty/tty-slang.h 62*4882a593Smuzhiyun@@ -23,6 +23,8 @@ 63*4882a593Smuzhiyun #define COLS SLtt_Screen_Cols 64*4882a593Smuzhiyun #define LINES SLtt_Screen_Rows 65*4882a593Smuzhiyun 66*4882a593Smuzhiyun+#define ENABLE_SHADOWS 1 67*4882a593Smuzhiyun+ 68*4882a593Smuzhiyun /*** enums ***************************************************************************************/ 69*4882a593Smuzhiyun 70*4882a593Smuzhiyun enum 71*4882a593Smuzhiyundiff --git a/src/filemanager/boxes.c b/src/filemanager/boxes.c 72*4882a593Smuzhiyunindex 3eb525be4a9b..98df5ff2ed9a 100644 73*4882a593Smuzhiyun--- a/src/filemanager/boxes.c 74*4882a593Smuzhiyun+++ b/src/filemanager/boxes.c 75*4882a593Smuzhiyun@@ -280,7 +280,9 @@ appearance_box_callback (Widget * w, Widget * sender, widget_msg_t msg, int parm 76*4882a593Smuzhiyun switch (msg) 77*4882a593Smuzhiyun { 78*4882a593Smuzhiyun case MSG_INIT: 79*4882a593Smuzhiyun+#ifdef ENABLE_SHADOWS 80*4882a593Smuzhiyun if (!tty_use_colors ()) 81*4882a593Smuzhiyun+#endif 82*4882a593Smuzhiyun { 83*4882a593Smuzhiyun Widget *shadow; 84*4882a593Smuzhiyun 85*4882a593Smuzhiyun-- 86*4882a593Smuzhiyun2.34.1 87*4882a593Smuzhiyun 88