From c13180cb2bead49addb00f33f4999200cbbd801f Mon Sep 17 00:00:00 2001 From: Fabrice Fontaine Date: Wed, 26 Feb 2020 10:16:14 +0100 Subject: [PATCH] fix static linking with ncurses Prefix LINES and COLS with MINICOM_ to avoid the following build failure when building statically with ncurses: /home/giuliobenetti/autobuild/run/instance-1/output-1/per-package/minicom/host/bin/arm-linux-gcc -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -static -W -Wall -Wextra -std=gnu99 -fno-common -Wno-format-truncation -static -o minicom minicom.o vt100.o config.o help.o updown.o util.o dial.o window.o wkeys.o ipc.o windiv.o sysdep1.o sysdep1_s.o sysdep2.o rwconf.o main.o file.o getsdir.o wildmat.o common.o ../lib/libport.a -lncurses /home/giuliobenetti/autobuild/run/instance-1/output-1/per-package/minicom/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: /home/giuliobenetti/autobuild/run/instance-1/output-1/per-package/minicom/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libncurses.a(lib_setup.o):(.bss+0x100): multiple definition of `COLS'; window.o:(.bss+0x38): first defined here /home/giuliobenetti/autobuild/run/instance-1/output-1/per-package/minicom/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: /home/giuliobenetti/autobuild/run/instance-1/output-1/per-package/minicom/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libncurses.a(lib_setup.o):(.bss+0x104): multiple definition of `LINES'; window.o:(.bss+0x3c): first defined here collect2: error: ld returned 1 exit status Makefile:448: recipe for target 'minicom' failed Fixes: - http://autobuild.buildroot.org/results/d3edbab1f2cd0f7b790e2559dc8d489497ae02f3 Signed-off-by: Fabrice Fontaine [Upstream status: sent to minicom-devel@lists.alioth.debian.org] --- src/config.c | 8 ++-- src/dial.c | 10 ++--- src/file.c | 8 ++-- src/help.c | 4 +- src/main.c | 68 ++++++++++++++++----------------- src/minicom.c | 2 +- src/vt100.c | 2 +- src/windiv.c | 8 ++-- src/window.c | 102 +++++++++++++++++++++++++------------------------- src/window.h | 2 +- 10 files changed, 107 insertions(+), 107 deletions(-) diff --git a/src/config.c b/src/config.c index 87901f0..3c26f9f 100644 --- a/src/config.c +++ b/src/config.c @@ -1078,7 +1078,7 @@ static void doscrkeyb(void) } else { psets(P_STATLINE, N_("enabled")); /* See if it fits on screen */ - if (LINES > 24) + if (MINICOM_LINES > 24) tempst = 0; } mc_wlocate(w, mbswidth(status_line) + 1, 2); @@ -1140,7 +1140,7 @@ static void doscrkeyb(void) if (st) { mc_wclose(st,0); - st = mc_wopen(0, LINES - 1, COLS - 1, LINES - 1, BNONE, + st = mc_wopen(0, MINICOM_LINES - 1, MINICOM_COLS - 1, MINICOM_LINES - 1, BNONE, XA_NORMAL, sfcolor, sbcolor, 1, 0, 1); show_status(); } @@ -1159,7 +1159,7 @@ static void doscrkeyb(void) if (st) { mc_wclose(st,0); - st = mc_wopen(0, LINES - 1, COLS - 1, LINES - 1, BNONE, + st = mc_wopen(0, MINICOM_LINES - 1, MINICOM_COLS - 1, MINICOM_LINES - 1, BNONE, XA_NORMAL, sfcolor, sbcolor, 1, 0, 0); show_status(); } @@ -1326,7 +1326,7 @@ int dotermmenu(void) } else { psets(P_STATLINE, N_("enabled")); /* See if it fits on screen */ - if (LINES > 24 || use_status) + if (MINICOM_LINES > 24 || use_status) tempst = 0; } mc_wlocate(w, mbswidth(status_line) + 1, 3); diff --git a/src/dial.c b/src/dial.c index 5076b32..5ef7ac3 100644 --- a/src/dial.c +++ b/src/dial.c @@ -1575,7 +1575,7 @@ void dialdir(void) *move_exit = N_(" Move entry up/down, Escape to exit"); unsigned int tagmvlen = 0; size_t i; - int position_dialing_directory = ((COLS / 2) + 32 - DIALOPTS * DIAL_WIDTH) / 2; + int position_dialing_directory = ((MINICOM_COLS / 2) + 32 - DIALOPTS * DIAL_WIDTH) / 2; dprev = -1; dname[0] = 0; @@ -1586,11 +1586,11 @@ void dialdir(void) /* Alright, draw the dialing directory! */ dirflush = 0; - x1 = (COLS / 2) - 37; - x2 = (COLS / 2) + 37; - dsub = mc_wopen(x1 - 1, LINES - 3, x2 + 1, LINES - 3, BNONE, + x1 = (MINICOM_COLS / 2) - 37; + x2 = (MINICOM_COLS / 2) + 37; + dsub = mc_wopen(x1 - 1, MINICOM_LINES - 3, x2 + 1, MINICOM_LINES - 3, BNONE, XA_REVERSE | stdattr, mfcolor, mbcolor, 0, 0, 1); - w = mc_wopen(x1, 2, x2, LINES - 6, BSINGLE, stdattr, mfcolor, mbcolor, 0, 0, 1); + w = mc_wopen(x1, 2, x2, MINICOM_LINES - 6, BSINGLE, stdattr, mfcolor, mbcolor, 0, 0, 1); mc_wcursor(w, CNONE); mc_wtitle(w, TMID, _("Dialing Directory")); mc_wputs(w, diff --git a/src/file.c b/src/file.c index be26afd..7c208a7 100644 --- a/src/file.c +++ b/src/file.c @@ -491,11 +491,11 @@ static void init_filedir(void) int x1, x2; dirflush = 0; - x1 = (COLS / 2) - 37; - x2 = (COLS / 2) + 37; - dsub = mc_wopen(x1 - 1, LINES - 3, x2 + 1, LINES - 3, BNONE, + x1 = (MINICOM_COLS / 2) - 37; + x2 = (MINICOM_COLS / 2) + 37; + dsub = mc_wopen(x1 - 1, MINICOM_LINES - 3, x2 + 1, MINICOM_LINES - 3, BNONE, stdattr, mfcolor, mbcolor, 0, 0, 1); - main_w = mc_wopen(x1, 2, x2, LINES - 6, BSINGLE, stdattr, mfcolor, + main_w = mc_wopen(x1, 2, x2, MINICOM_LINES - 6, BSINGLE, stdattr, mfcolor, mbcolor, 0, 0, 1); if (ret_buf == NULL) { diff --git a/src/help.c b/src/help.c index 70cf8c6..3036d0a 100644 --- a/src/help.c +++ b/src/help.c @@ -34,8 +34,8 @@ int help(void) const char *s; char buf[40]; - x1 = (COLS / 2) - 34; - x2 = (COLS / 2) + 32; + x1 = (MINICOM_COLS / 2) - 34; + x2 = (MINICOM_COLS / 2) + 32; w = mc_wopen(x1, 2, x2, 18, BDOUBLE, stdattr, mfcolor, mbcolor, 0, 0, 1); s = _("Minicom Command Summary"); diff --git a/src/main.c b/src/main.c index 85bd4a5..8f8e8f7 100644 --- a/src/main.c +++ b/src/main.c @@ -485,17 +485,17 @@ void init_emul(int type, int do_init) } /* See if we have space for a fixed status line */ - maxy = LINES - 1; - if ((use_status || LINES > 24) && + maxy = MINICOM_LINES - 1; + if ((use_status || MINICOM_LINES > 24) && P_STATLINE[0] == 'e') { if (use_status) { - ypos = LINES; - maxy = LINES - 1; + ypos = MINICOM_LINES; + maxy = MINICOM_LINES - 1; } else { - ypos = LINES - 1; - maxy = LINES - 2; + ypos = MINICOM_LINES - 1; + maxy = MINICOM_LINES - 2; } - st = mc_wopen(0, ypos, COLS - 1, ypos, BNONE, + st = mc_wopen(0, ypos, MINICOM_COLS - 1, ypos, BNONE, st_attr, sfcolor, sbcolor, 1, 0, 1); mc_wredraw(st, 1); } @@ -508,7 +508,7 @@ void init_emul(int type, int do_init) num_hist_lines = 5000; /* Open a new main window, and define the configured history buffer size. */ - us = mc_wopen(0, 0, COLS - 1, maxy, + us = mc_wopen(0, 0, MINICOM_COLS - 1, maxy, BNONE, XA_NORMAL, tfcolor, tbcolor, 1, num_hist_lines, 0); if (x >= 0) { @@ -520,8 +520,8 @@ void init_emul(int type, int do_init) us->wrap = wrapln; terminal = type; - lines = LINES - (st != NULL); - cols = COLS; + lines = MINICOM_LINES - (st != NULL); + cols = MINICOM_COLS; /* Install and reset the terminal emulator. */ if (do_init) { @@ -583,10 +583,10 @@ static void show_status_fmt(const char *fmt) if (!st) return; - char buf[COLS]; + char buf[MINICOM_COLS]; int bufi = 0; int l = strlen(fmt); - for (int i = 0; i < l && bufi < COLS; ++i) + for (int i = 0; i < l && bufi < MINICOM_COLS; ++i) { if (fmt[i] == '%' && i + 1 < l) { @@ -596,70 +596,70 @@ static void show_status_fmt(const char *fmt) switch (func) { case '%': - bufi += snprintf(buf + bufi, COLS - bufi, "%%"); + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, "%%"); break; case 'H': - bufi += snprintf(buf + bufi, COLS - bufi, "%sZ", esc_key()); + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, "%sZ", esc_key()); break; case 'V': - bufi += snprintf(buf + bufi, COLS - bufi, "%s", VERSION); + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, "%s", VERSION); break; case 'b': #ifdef USE_SOCKET if (portfd_is_socket == Socket_type_unix) - bufi += snprintf(buf + bufi, COLS - bufi, "unix-socket"); + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, "unix-socket"); else if (portfd_is_socket == Socket_type_tcp) - bufi += snprintf(buf + bufi, COLS - bufi, "TCP"); + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, "TCP"); else #endif /* USE_SOCKET */ { if (P_SHOWSPD[0] == 'l') - bufi += snprintf(buf + bufi, COLS - bufi, "%6ld", linespd); + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, "%6ld", linespd); else - bufi += snprintf(buf + bufi, COLS - bufi, "%s", P_BAUDRATE); - bufi += snprintf(buf + bufi, COLS - bufi, " %s%s%s", P_BITS, P_PARITY, P_STOPB); + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, "%s", P_BAUDRATE); + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, " %s%s%s", P_BITS, P_PARITY, P_STOPB); } break; case 'T': switch (terminal) { case VT100: - bufi += snprintf(buf + bufi, COLS - bufi, "VT102"); + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, "VT102"); break; case ANSI: - bufi += snprintf(buf + bufi, COLS - bufi, "ANSI"); + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, "ANSI"); break; } break; case 'C': - bufi += snprintf(buf + bufi, COLS - bufi, cursormode == NORMAL ? "NOR" : "APP"); + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, cursormode == NORMAL ? "NOR" : "APP"); break; case 't': if (online < 0) - bufi += snprintf(buf + bufi, COLS - bufi, "%s", + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, "%s", P_HASDCD[0] == 'Y' ? _("Offline") : _("OFFLINE")); else - bufi += snprintf(buf + bufi, COLS - bufi, "%s %ld:%ld", + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, "%s %ld:%ld", P_HASDCD[0] == 'Y' ? _("Online") : _("ONLINE"), online / 3600, (online / 60) % 60); break; case 'D': { - char b[COLS - bufi]; - bufi += snprintf(buf + bufi, COLS - bufi, "%s", + char b[MINICOM_COLS - bufi]; + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, "%s", shortened_devpath(b, sizeof(b), dial_tty)); } break; case '$': - bufi += snprintf(buf + bufi, COLS - bufi, "%s", status_message); + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, "%s", status_message); break; default: - bufi += snprintf(buf + bufi, COLS - bufi, "?%c", func); + bufi += snprintf(buf + bufi, MINICOM_COLS - bufi, "?%c", func); break; } } @@ -670,9 +670,9 @@ static void show_status_fmt(const char *fmt) } } - if (bufi < COLS - 1) - memset(buf + bufi, ' ', COLS - bufi); - buf[COLS - 1] = 0; + if (bufi < MINICOM_COLS - 1) + memset(buf + bufi, ' ', MINICOM_COLS - bufi); + buf[MINICOM_COLS - 1] = 0; if (size_changed || !current_status_line || strcmp(buf, current_status_line)) { @@ -681,7 +681,7 @@ static void show_status_fmt(const char *fmt) mc_wprintf(st, "%s", buf); mc_wredraw(st, 1); ret_csr(); - current_status_line = realloc(current_status_line, COLS); + current_status_line = realloc(current_status_line, MINICOM_COLS); assert(current_status_line); strcpy(current_status_line, buf); } @@ -814,7 +814,7 @@ static void showtemp(void) if (st) return; - st = mc_wopen(0, LINES - 1, COLS - 1, LINES - 1, + st = mc_wopen(0, MINICOM_LINES - 1, MINICOM_COLS - 1, MINICOM_LINES - 1, BNONE, st_attr, sfcolor, sbcolor, 1, 0, 1); show_status(); tempst = 1; diff --git a/src/minicom.c b/src/minicom.c index cfdb763..d876cb2 100644 --- a/src/minicom.c +++ b/src/minicom.c @@ -1502,7 +1502,7 @@ int main(int argc, char **argv) if (win_init(tfcolor, tbcolor, XA_NORMAL) < 0) leave(""); - if (COLS < 40 || LINES < 10) + if (MINICOM_COLS < 40 || MINICOM_LINES < 10) leave(_("Sorry. Your screen is too small.\n")); if (dosetup) { diff --git a/src/vt100.c b/src/vt100.c index 82e395e..2f03549 100644 --- a/src/vt100.c +++ b/src/vt100.c @@ -739,7 +739,7 @@ static void dec_mode(int on_off) if (on_off) { - us_alternate = mc_wopen(0, 0, COLS - 1, us->y2, BNONE, XA_NORMAL, + us_alternate = mc_wopen(0, 0, MINICOM_COLS - 1, us->y2, BNONE, XA_NORMAL, tfcolor, tbcolor, 1, 0, 0); vt_win = us_alternate; } diff --git a/src/windiv.c b/src/windiv.c index 2644dff..fb4d73c 100644 --- a/src/windiv.c +++ b/src/windiv.c @@ -48,8 +48,8 @@ static WIN *vmc_tell(const char *fmt, va_list va) vsnprintf(buf, sizeof(buf), fmt, va); - w = mc_wopen((COLS / 2) - 2 - mbswidth(buf) / 2, 8, - (COLS / 2) + 2 + mbswidth(buf) / 2, 10, + w = mc_wopen((MINICOM_COLS / 2) - 2 - mbswidth(buf) / 2, 8, + (MINICOM_COLS / 2) + 2 + mbswidth(buf) / 2, 10, BDOUBLE, stdattr, mfcolor, mbcolor, 0, 0, 1); mc_wcursor(w, CNONE); mc_wlocate(w, 2, 1); @@ -104,7 +104,7 @@ int ask(const char *what, const char **s) size = mbswidth(what) / 2 + 2; offs = size - 5*num; } - w = mc_wopen((COLS / 2) - size , 8, (COLS / 2) + 1 + size, 9, + w = mc_wopen((MINICOM_COLS / 2) - size , 8, (MINICOM_COLS / 2) + 1 + size, 9, BSINGLE, stdattr, mfcolor, mbcolor, 0, 0, 1); dirflush = 0; @@ -167,7 +167,7 @@ char *input(char *s, char *buf, size_t bufsize) { WIN *w; - w = mc_wopen((COLS / 2) - 20, 11, (COLS / 2) + 20, 12, + w = mc_wopen((MINICOM_COLS / 2) - 20, 11, (MINICOM_COLS / 2) + 20, 12, BDOUBLE, stdattr, mfcolor, mbcolor, 1, 0, 1); mc_wputs(w, s); mc_wlocate(w, 0, 1); diff --git a/src/window.c b/src/window.c index c6cf0f1..66f2978 100644 --- a/src/window.c +++ b/src/window.c @@ -104,7 +104,7 @@ static int sflag = 0; int useattr = 1; int dirflush = 1; -int LINES, COLS; +int MINICOM_LINES, MINICOM_COLS; int usecolor = 0; WIN *stdwin; /* @@ -266,12 +266,12 @@ static void _gotoxy(int x, int y) int tmp; /* Sanity check. */ - if (x >= COLS || y > LINES || (x == curx && y == cury)) + if (x >= MINICOM_COLS || y > MINICOM_LINES || (x == curx && y == cury)) return; if (use_status) { /* Leaving status line? */ - if (cury == LINES && y < cury) { + if (cury == MINICOM_LINES && y < cury) { outstr(FS); /* Re-set attributes. */ tmp = curattr; @@ -282,7 +282,7 @@ static void _gotoxy(int x, int y) return; } /* Writing on status line? */ - else if (y == LINES) { + else if (y == MINICOM_LINES) { /* From normal screen? */ if (cury < y) { outstr(tgoto(TS, x, x)); @@ -298,11 +298,11 @@ static void _gotoxy(int x, int y) } #else /* Sanity check. */ - if (x >= COLS || y >= LINES || (x == curx && y == cury)) { + if (x >= MINICOM_COLS || y >= MINICOM_LINES || (x == curx && y == cury)) { # if 0 - if (x >= COLS || y >= LINES) + if (x >= MINICOM_COLS || y >= MINICOM_LINES) fprintf(stderr, "OOPS: (x, y) == (%d, %d)\n", - COLS, LINES); + MINICOM_COLS, MINICOM_LINES); # endif return; } @@ -345,7 +345,7 @@ static void _write(wchar_t c, int doit, int x, int y, char attr, char color) * last line, last character. After scrolling, this "invisible" * character is automatically restored. */ - if (_has_am && y >= LINES - 1 && x >= COLS - 1) { + if (_has_am && y >= MINICOM_LINES - 1 && x >= MINICOM_COLS - 1) { doit = 0; sflag = 1; oldc.value = c; @@ -353,9 +353,9 @@ static void _write(wchar_t c, int doit, int x, int y, char attr, char color) oldc.color = color; } #ifdef ST_LINE - if (x < COLS && y <= LINES) + if (x < MINICOM_COLS && y <= MINICOM_LINES) #else - if (x < COLS && y < LINES) + if (x < MINICOM_COLS && y < MINICOM_LINES) #endif { if (doit != 0) { @@ -380,7 +380,7 @@ static void _write(wchar_t c, int doit, int x, int y, char attr, char color) curx++; } if (doit >= 0) { - e = &gmap[x + y * COLS]; + e = &gmap[x + y * MINICOM_COLS]; e->value = c; e->attr = attr; e->color = color; @@ -428,7 +428,7 @@ void mc_wresize(WIN *win, int lines, int cols) for (x = 0; x < cols; x++) { n = &newmap[y + x * cols]; if (x < win->xs && y < win->ys) { - e = &oldmap[y + x * COLS]; + e = &oldmap[y + x * MINICOM_COLS]; n->value = e->value; n->color = e->color; n->attr = e->attr; @@ -446,8 +446,8 @@ void mc_wresize(WIN *win, int lines, int cols) free(oldmap); if (win == stdwin) { gmap = newmap; - LINES = lines; - COLS = cols; + MINICOM_LINES = lines; + MINICOM_COLS = cols; } else win->map = newmap; } @@ -485,10 +485,10 @@ WIN *mc_wopen(int x1, int y1, int x2, int y2, int border, int attr, if (y1 < offs) y1 = offs; #if 0 - if (x2 >= COLS - offs) - x2 = COLS - offs - 1; - if (y2 >= LINES - offs) - y2 = LINES - offs - 1; + if (x2 >= MINICOM_COLS - offs) + x2 = MINICOM_COLS - offs - 1; + if (y2 >= MINICOM_LINES - offs) + y2 = MINICOM_LINES - offs - 1; #endif w->xs = x2 - x1 + 1; @@ -531,7 +531,7 @@ WIN *mc_wopen(int x1, int y1, int x2, int y2, int border, int attr, bytes = (x2 - x1 + 1) * sizeof(ELM); /* Loop */ for (y = y1; y <= y2; y++) { - memcpy(e, gmap + COLS * y + x1, bytes); + memcpy(e, gmap + MINICOM_COLS * y + x1, bytes); e += (x2 - x1 + 1); } @@ -649,7 +649,7 @@ void mc_wleave(void) ocursor = _curstype; setcbreak(0); /* Normal */ - _gotoxy(0, LINES - 1); + _gotoxy(0, MINICOM_LINES - 1); _setattr(XA_NORMAL, COLATTR(WHITE, BLACK)); _cursor(CNORMAL); if (CL != NULL) @@ -688,8 +688,8 @@ void mc_wreturn(void) _cursor(ocursor); e = gmap; - for (y = 0; y value, -1, x, y, e->attr, e->color); e++; } @@ -750,7 +750,7 @@ static int _wclreol(WIN *w) y = w->cury + w->y1; - if (w->direct && (w->x2 == COLS - 1) && CE) { + if (w->direct && (w->x2 == MINICOM_COLS - 1) && CE) { _gotoxy(w->curx + w->x1, y); _setattr(w->attr, w->color); outstr(CE); @@ -779,12 +779,12 @@ void mc_wscroll(WIN *win, int dir) * This improves performance on slow screens (eg ATARI ST) dramatically. */ if (win->direct && SF != NULL && - (dir == S_UP || SR != NULL) && (LINES == win->sy2 - win->sy1 + 1)) { + (dir == S_UP || SR != NULL) && (MINICOM_LINES == win->sy2 - win->sy1 + 1)) { doit = 0; phys_scr = 1; _setattr(win->attr, win->color); if (dir == S_UP) { - _gotoxy(0, LINES - 1); + _gotoxy(0, MINICOM_LINES - 1); outstr(SF); } else { _gotoxy(0, 0); @@ -795,7 +795,7 @@ void mc_wscroll(WIN *win, int dir) * If the window is as wide as the physical screen, we can * scroll it with insert/delete line (or set scroll region - vt100!) */ - else if (win->direct && win->xs == COLS && + else if (win->direct && win->xs == MINICOM_COLS && ((CS != NULL && SF != NULL && SR != NULL) || (Dl != NULL && Al != NULL))) { doit = 0; @@ -806,7 +806,7 @@ void mc_wscroll(WIN *win, int dir) * big as the physical screen, we don't _have_ to * initialize it. */ - if (win->sy2 == LINES - 1 && win->sy1 == 0) + if (win->sy2 == MINICOM_LINES - 1 && win->sy1 == 0) fs = 1; if (!fs) { outstr(tgoto(CS, win->sy2, win->sy1)); @@ -820,7 +820,7 @@ void mc_wscroll(WIN *win, int dir) outstr(SR); } if (!fs) { - outstr(tgoto(CS, LINES - 1, 0)); + outstr(tgoto(CS, MINICOM_LINES - 1, 0)); cury = 0; } _gotoxy(0, win->sy2); @@ -843,9 +843,9 @@ void mc_wscroll(WIN *win, int dir) * to the lower right. After scrolling we have to restore * the non-visible character that is now visible. */ - if (sflag && win->sy2 == (LINES - 1) && win->sy1 != win->sy2) { + if (sflag && win->sy2 == (MINICOM_LINES - 1) && win->sy1 != win->sy2) { if (dir == S_UP) { - _write(oldc.value, 1, COLS - 1, LINES - 2, + _write(oldc.value, 1, MINICOM_COLS - 1, MINICOM_LINES - 2, oldc.attr, oldc.color); } sflag = 0; @@ -858,7 +858,7 @@ void mc_wscroll(WIN *win, int dir) win->sy2 == win->y2 && win->sy1 == win->y1) { /* Calculate screen buffer */ - e = gmap + win->y1 * COLS + win->x1; + e = gmap + win->y1 * MINICOM_COLS + win->x1; /* Calculate history buffer */ f = win->histbuf + (win->xs * win->histline); @@ -903,7 +903,7 @@ void mc_wscroll(WIN *win, int dir) /* Now scroll the memory image. */ if (dir == S_UP) { for (y = win->sy1 + 1; y <= win->sy2; y++) { - e = gmap + y * COLS + win->x1; + e = gmap + y * MINICOM_COLS + win->x1; for (x = win->x1; x <= win->x2; x++) { _write(e->value, win->direct && doit, x, y - 1, e->attr, e->color); e++; @@ -915,7 +915,7 @@ void mc_wscroll(WIN *win, int dir) _wclreol(win); } else { for (y = win->sy2 - 1; y >= win->sy1; y--) { - e = gmap + y * COLS + win->x1; + e = gmap + y * MINICOM_COLS + win->x1; for (x = win->x1; x <= win->x2; x++) { _write(e->value, win->direct && doit, x, y + 1, e->attr, e->color); e++; @@ -1195,7 +1195,7 @@ void mc_wcurbar(WIN *w, int y, int attr) y += w->y1; - e = gmap + y * COLS + w->x1; + e = gmap + y * MINICOM_COLS + w->x1; /* If we can't do reverse, just put a '>' in front of * the line. We only support XA_NORMAL & XA_REVERSE. @@ -1447,7 +1447,7 @@ void mc_winclr(WIN *w) /* contains them for cosmetic purposes or as separators. */ for (m = w->y2; m >= w->y1; m--) { /* Start of this line in the global map. */ - e = gmap + m * COLS + w->x1; + e = gmap + m * MINICOM_COLS + w->x1; /* Quick check to see if line is empty. */ for (i = 0; i < w->xs; i++) @@ -1461,7 +1461,7 @@ void mc_winclr(WIN *w) /* Copy window into history buffer line-by-line. */ for (y = w->y1; y <= m; y++) { /* Start of this line in the global map. */ - e = gmap + y * COLS + w->x1; + e = gmap + y * MINICOM_COLS + w->x1; /* Now copy this line. */ f = w->histbuf + (w->xs * w->histline); /* History buffer */ @@ -1475,7 +1475,7 @@ void mc_winclr(WIN *w) _setattr(w->attr, w->color); w->curx = 0; - if (CL && w->y1 == 0 && w->y2 == LINES-1 && w->x1 == 0 && w->x2 == COLS-1) { + if (CL && w->y1 == 0 && w->y2 == MINICOM_LINES-1 && w->x1 == 0 && w->x2 == MINICOM_COLS-1) { w->direct = 0; curx = 0; cury = 0; @@ -1567,7 +1567,7 @@ void mc_winschar2(WIN *w, wchar_t c, int move) } odir = w->direct; - if (w->xs == COLS && IC != NULL) { + if (w->xs == MINICOM_COLS && IC != NULL) { /* We can use the insert character capability. */ if (w->direct) outstr(IC); @@ -1589,7 +1589,7 @@ void mc_winschar2(WIN *w, wchar_t c, int move) buf = malloc(sizeof(ELM) * len); if (!buf) return; /* Umm... */ - memcpy(buf, gmap + COLS * y + x, sizeof(ELM) * len); + memcpy(buf, gmap + MINICOM_COLS * y + x, sizeof(ELM) * len); /* Now, put the new character on screen. */ mc_wputc(w, c); @@ -1625,14 +1625,14 @@ void mc_wdelchar(WIN *w) x = w->x1 + w->curx; y = w->y1 + w->cury; - if (w->direct && w->xs == COLS && DC != NULL) { + if (w->direct && w->xs == MINICOM_COLS && DC != NULL) { /*_gotoxy(x - 1, y);*/ _gotoxy(x, y); outstr(DC); doit = 0; } - e = gmap + y * COLS + x + 1; + e = gmap + y * MINICOM_COLS + x + 1; for (; x < w->x2; x++) { _write(e->value, doit && w->direct, x, y, e->attr, e->color); @@ -1906,16 +1906,16 @@ int win_init(int fg, int bg, int attr) fprintf(stderr, _("No cursor motion capability (cm)\n")); return -1; } - LINES = COLS = 0; - getrowcols(&LINES, &COLS); + MINICOM_LINES = MINICOM_COLS = 0; + getrowcols(&MINICOM_LINES, &MINICOM_COLS); #ifdef BBS - LINES = lines; + MINICOM_LINES = lines; #endif - if (LINES == 0 && (LINES = tgetnum("li")) <= 0) { + if (MINICOM_LINES == 0 && (MINICOM_LINES = tgetnum("li")) <= 0) { fprintf(stderr, _("Number of terminal lines unknown\n")); return -1; } - if (COLS == 0 && (COLS = tgetnum("co")) <= 0) { + if (MINICOM_COLS == 0 && (MINICOM_COLS = tgetnum("co")) <= 0) { fprintf(stderr, _("Number of terminal columns unknown\n")); return -1; } @@ -2053,7 +2053,7 @@ int win_init(int fg, int bg, int attr) /* Memory for global map */ - if ((gmap = malloc(sizeof(ELM) * (LINES + 1) * COLS)) == NULL) { + if ((gmap = malloc(sizeof(ELM) * (MINICOM_LINES + 1) * MINICOM_COLS)) == NULL) { fprintf(stderr, _("Not enough memory\n")); return -1; }; @@ -2068,10 +2068,10 @@ int win_init(int fg, int bg, int attr) stdwin->doscroll = 1; stdwin->x1 = 0; stdwin->sy1 = stdwin->y1 = 0; - stdwin->x2 = COLS - 1; - stdwin->sy2 = stdwin->y2 = LINES - 1; - stdwin->xs = COLS; - stdwin->ys = LINES; + stdwin->x2 = MINICOM_COLS - 1; + stdwin->sy2 = stdwin->y2 = MINICOM_LINES - 1; + stdwin->xs = MINICOM_COLS; + stdwin->ys = MINICOM_LINES; stdwin->attr = attr; stdwin->color = COLATTR(fg, bg); stdwin->direct = 1; diff --git a/src/window.h b/src/window.h index 1b8eb12..97f3bdd 100644 --- a/src/window.h +++ b/src/window.h @@ -62,7 +62,7 @@ typedef struct _win { * Stdwin is the whole screen */ extern WIN *stdwin; /* Whole screen */ -extern int LINES, COLS; /* Size of screen */ +extern int MINICOM_LINES, MINICOM_COLS; /* Size of screen */ extern int usecolor; /* Use ansi color escape sequences */ extern int useattr; /* Use attributes (reverse, bold etc. ) */ extern int dirflush; /* Direct flush after write */ -- 2.25.0