Upstream Links 2.30

This commit is contained in:
Juhani Krekelä 2024-08-26 19:03:41 +03:00
parent adc4c50290
commit 622a2d8cb9
22 changed files with 8006 additions and 5900 deletions

View file

@ -1,3 +1,17 @@
=== RELEASE 2.30 ===
Sat Jul 27 18:41:39 CEST 2024 mikulas:
Disable asynchronous DNS on Windows because of some Cygwin bug
Sun Jul 21 19:58:03 CEST 2024 mikulas:
Fix the configure script to work with GCC 14
Sun Jul 21 17:22:30 CEST 2024 mikulas:
Fix window title on kwin
=== RELEASE 2.29 === === RELEASE 2.29 ===
Thu Mar 9 19:51:20 CET 2023 Florian Weimer <fweimer@redhat.com>: Thu Mar 9 19:51:20 CET 2023 Florian Weimer <fweimer@redhat.com>:

View file

@ -1,4 +1,4 @@
Links 2.29 -- How To Install Links 2.30 -- How To Install
---------------------------- ----------------------------
Follow this step-by-step: Follow this step-by-step:

View file

@ -104,10 +104,10 @@ mailto.o main.o memory.o menu.o objreq.o os_dep.o pmshell.o png.o \
sched.o select.o session.o smb.o string.o suffix.o svg.o svgalib.o \ sched.o select.o session.o smb.o string.o suffix.o svg.o svgalib.o \
terminal.o tiff.o types.o url.o view.o view_gr.o vms.o webp.o x.o xbm.o terminal.o tiff.o types.o url.o view.o view_gr.o vms.o webp.o x.o xbm.o
@ATHEOS_GR_TRUE@links_DEPENDENCIES = atheos.o @ATHEOS_GR_TRUE@links_DEPENDENCIES = atheos.o
@HAIKU_GR_TRUE@links_DEPENDENCIES = haiku.o
@JAVASCRIPT_TRUE@links_DEPENDENCIES = builtin.o context.o ipret.o \ @JAVASCRIPT_TRUE@links_DEPENDENCIES = builtin.o context.o ipret.o \
@JAVASCRIPT_TRUE@javascr.o javascript.o md5.o md5hl.o ns.o pomocny.o \ @JAVASCRIPT_TRUE@javascr.o javascript.o md5.o md5hl.o ns.o pomocny.o \
@JAVASCRIPT_TRUE@regexp.o @JAVASCRIPT_TRUE@regexp.o
@HAIKU_GR_TRUE@links_DEPENDENCIES = haiku.o
links_LDFLAGS = links_LDFLAGS =
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)

1
bfu.c
View file

@ -536,6 +536,7 @@ static void menu_func(struct window *win, struct links_event *ev, int fwd)
int f = 1; int f = 1;
struct window *w1; struct window *w1;
struct list_head *w1l; struct list_head *w1l;
f = f + 0; /* avoid warning */
foreachfrom(struct window, w1, w1l, win->term->windows, &win->list_entry) { foreachfrom(struct window, w1, w1l, win->term->windows, &win->list_entry) {
struct menu *m1; struct menu *m1;
if (w1->handler == mainmenu_func) { if (w1->handler == mainmenu_func) {

222
certs.inc

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

View file

@ -940,11 +940,11 @@
#define PACKAGE "links" #define PACKAGE "links"
/* Version number of package */ /* Version number of package */
#define VERSION "2.29" #define VERSION "2.30"
/* */ /* */
#define VERSION "2.29" #define VERSION "2.30"
/* */ /* */
/* #undef HAVE_OPENMP */ /* #undef HAVE_OPENMP */

35
configure vendored
View file

@ -773,7 +773,7 @@ fi
PACKAGE=links PACKAGE=links
VERSION=2.29 VERSION=2.30
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
{ echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; } { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
@ -1001,7 +1001,7 @@ cat > conftest.$ac_ext << EOF
#line 1004 "configure" #line 1004 "configure"
#include "confdefs.h" #include "confdefs.h"
main(){return(0);} int main(){return(0);}
EOF EOF
if { (eval echo configure:1009: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then if { (eval echo configure:1009: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes ac_cv_prog_cc_works=yes
@ -1260,6 +1260,7 @@ else
#line 1263 "configure" #line 1263 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <ctype.h> #include <ctype.h>
#include <stdlib.h>
#define ISLOWER(c) ('a' <= (c) && (c) <= 'z') #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) #define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
@ -2054,7 +2055,7 @@ for ac_kw in inline __inline__ __inline; do
#include "confdefs.h" #include "confdefs.h"
int main() { int main() {
} $ac_kw foo() { } $ac_kw int foo() {
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:2063: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then if { (eval echo configure:2063: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
@ -2320,8 +2321,9 @@ else
#line 2323 "configure" #line 2323 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <stdio.h> #include <stdio.h>
#include <stdlib.h>
#include <sys/types.h> #include <sys/types.h>
main() int main()
{ {
FILE *f=fopen("conftestval", "w"); FILE *f=fopen("conftestval", "w");
if (!f) exit(1); if (!f) exit(1);
@ -2360,8 +2362,9 @@ else
#line 2363 "configure" #line 2363 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <stdio.h> #include <stdio.h>
#include <stdlib.h>
#include <sys/types.h> #include <sys/types.h>
main() int main()
{ {
FILE *f=fopen("conftestval", "w"); FILE *f=fopen("conftestval", "w");
if (!f) exit(1); if (!f) exit(1);
@ -2400,8 +2403,9 @@ else
#line 2403 "configure" #line 2403 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <stdio.h> #include <stdio.h>
#include <stdlib.h>
#include <sys/types.h> #include <sys/types.h>
main() int main()
{ {
FILE *f=fopen("conftestval", "w"); FILE *f=fopen("conftestval", "w");
if (!f) exit(1); if (!f) exit(1);
@ -2441,8 +2445,9 @@ else
#line 2444 "configure" #line 2444 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <stdio.h> #include <stdio.h>
#include <stdlib.h>
#include <sys/types.h> #include <sys/types.h>
main() int main()
{ {
FILE *f=fopen("conftestval", "w"); FILE *f=fopen("conftestval", "w");
if (!f) exit(1); if (!f) exit(1);
@ -6435,7 +6440,7 @@ cat > conftest.$ac_ext <<EOF
#include "confdefs.h" #include "confdefs.h"
int main() { int main() {
main() int main()
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:6444: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then if { (eval echo configure:6444: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
@ -7216,6 +7221,7 @@ echo "configure:7215: checking for OpenSSL" >&5
#line 7219 "configure" #line 7219 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <stdio.h> #include <stdio.h>
#include <stdlib.h>
#include <openssl/ssl.h> #include <openssl/ssl.h>
int main() { int main() {
SSL_CTX_new((void *)0) SSL_CTX_new((void *)0)
@ -7254,6 +7260,7 @@ echo "configure:7243: checking for OpenSSL" >&5
#line 7257 "configure" #line 7257 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <stdio.h> #include <stdio.h>
#include <stdlib.h>
#include <openssl/ssl.h> #include <openssl/ssl.h>
int main() { int main() {
SSL_CTX_new((void *)0) SSL_CTX_new((void *)0)
@ -8934,7 +8941,7 @@ if test "$ac_x_libraries" = NO; then
# Check for the libraries. # Check for the libraries.
test -z "$x_direct_test_library" && x_direct_test_library=Xt test -z "$x_direct_test_library" && x_direct_test_library=Xt
test -z "$x_direct_test_function" && x_direct_test_function=XtMalloc test -z "$x_direct_test_function" && x_direct_test_function='int XtMalloc'
# See if we find them without any special options. # See if we find them without any special options.
# Don't add to $LIBS permanently. # Don't add to $LIBS permanently.
@ -9759,7 +9766,7 @@ cat > conftest.$ac_ext <<EOF
#include "confdefs.h" #include "confdefs.h"
int main() { int main() {
main() int main()
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:9760: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then if { (eval echo configure:9760: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
@ -9802,7 +9809,7 @@ cat > conftest.$ac_ext <<EOF
#include "confdefs.h" #include "confdefs.h"
int main() { int main() {
main() int main()
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:9803: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then if { (eval echo configure:9803: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
@ -9846,7 +9853,7 @@ cat > conftest.$ac_ext <<EOF
#include "confdefs.h" #include "confdefs.h"
int main() { int main() {
main() int main()
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:9847: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then if { (eval echo configure:9847: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
@ -10095,7 +10102,7 @@ cat > conftest.$ac_ext <<EOF
#include "confdefs.h" #include "confdefs.h"
int main() { int main() {
main() int main()
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:10096: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then if { (eval echo configure:10096: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
@ -10138,7 +10145,7 @@ cat > conftest.$ac_ext <<EOF
#include "confdefs.h" #include "confdefs.h"
int main() { int main() {
main() int main()
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:10139: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then if { (eval echo configure:10139: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then

View file

@ -5,7 +5,7 @@
AC_INIT(main.c) AC_INIT(main.c)
AM_INIT_AUTOMAKE(links, 2.29) AM_INIT_AUTOMAKE(links, 2.30)
ACLOCAL="./missing aclocal" ACLOCAL="./missing aclocal"
AUTOCONF="./missing autoconf" AUTOCONF="./missing autoconf"

View file

@ -22,8 +22,8 @@ T_LINKS__LYNX_LIKE, "Links " VERSION_STRING "\n\nWWW browser",
T_VERSION, "Verze", T_VERSION, "Verze",
T_VERSION_INFORMATION, "Informace o verzi", T_VERSION_INFORMATION, "Informace o verzi",
T_LINKS_VERSION, "Verze Linksu", T_LINKS_VERSION, "Verze Linksu",
T_OPERATING_SYSTEM_TYPE, "Typ operaèního systému", T_OPERATING_SYSTEM_TYPE, "Typ systému",
T_OPERATING_SYSTEM_VERSION, "Verze operaèního systému", T_OPERATING_SYSTEM_VERSION, "Verze systému",
T_COMPILER, "Kompilátor", T_COMPILER, "Kompilátor",
T_WORD_SIZE, "Velikost slova", T_WORD_SIZE, "Velikost slova",
T_MEMORY, "Pamì»", T_MEMORY, "Pamì»",

View file

@ -22,8 +22,8 @@ T_LINKS__LYNX_LIKE, "Links " VERSION_STRING "\n\nText and graphics WWW browser",
T_VERSION, "Version", T_VERSION, "Version",
T_VERSION_INFORMATION, "Version information", T_VERSION_INFORMATION, "Version information",
T_LINKS_VERSION, "Links version", T_LINKS_VERSION, "Links version",
T_OPERATING_SYSTEM_TYPE, "Operating system type", T_OPERATING_SYSTEM_TYPE, "System type",
T_OPERATING_SYSTEM_VERSION, "Operating system version", T_OPERATING_SYSTEM_VERSION, "System version",
T_COMPILER, "Compiler", T_COMPILER, "Compiler",
T_WORD_SIZE, "Word size", T_WORD_SIZE, "Word size",
T_MEMORY, "Memory", T_MEMORY, "Memory",
@ -36,10 +36,10 @@ T_IPV6, "IPv6",
T_NOT_ENABLED_IN_SYSTEM, "Not enabled in system", T_NOT_ENABLED_IN_SYSTEM, "Not enabled in system",
T_LOCAL_NETWORK_ONLY, "Local network only", T_LOCAL_NETWORK_ONLY, "Local network only",
T_UTF8_TERMINAL, "UTF-8 terminal", T_UTF8_TERMINAL, "UTF-8 terminal",
T_COMPRESSION_METHODS, "Compression methods", T_COMPRESSION_METHODS, "Compression",
T_ENCRYPTION, "Encryption", T_ENCRYPTION, "Encryption",
T_NO_CERTIFICATE_VERIFICATION, "no certificate verification", T_NO_CERTIFICATE_VERIFICATION, "no certificate verification",
T_GPM_MOUSE_DRIVER, "GPM mouse driver", T_GPM_MOUSE_DRIVER, "Mouse driver",
T_XTERM_FOR_OS2, "Xterm for OS/2", T_XTERM_FOR_OS2, "Xterm for OS/2",
T_GRAPHICS_MODE, "Graphics mode", T_GRAPHICS_MODE, "Graphics mode",
T_IMAGE_LIBRARIES, "Image libraries", T_IMAGE_LIBRARIES, "Image libraries",
@ -51,7 +51,7 @@ T_DISABLED, "Disabled",
T_THREAD, "thread", T_THREAD, "thread",
T_THREADS, "threads", T_THREADS, "threads",
T_THREADS5, "threads", T_THREADS5, "threads",
T_CONFIGURATION_DIRECTORY, "Configuration directory", T_CONFIGURATION_DIRECTORY, "Home directory",
T_NONE, "None", T_NONE, "None",
T_KEYS, "Keys", T_KEYS, "Keys",
T_KEYS_DESC, "ESC display menu\n^C, q, Q quit\np, l scroll up, down\n[, ] scroll left, right\nup, down select link\nH, L select top/bottom link\n-> follow link\n<-, z go back\n', x go forward\nTAB switch frames\ng go to url\nG go to url based on current url\n^G go to url based on current link\n* toggle image displaying\n^W complete URL or search string\n^B,^X,^V,^K copy, cut, paste, cut line to/from clipboard\nAlt-1 .. Alt-9 switch virtual screens (svgalib and fb)", T_KEYS_DESC, "ESC display menu\n^C, q, Q quit\np, l scroll up, down\n[, ] scroll left, right\nup, down select link\nH, L select top/bottom link\n-> follow link\n<-, z go back\n', x go forward\nTAB switch frames\ng go to url\nG go to url based on current url\n^G go to url based on current link\n* toggle image displaying\n^W complete URL or search string\n^B,^X,^V,^K copy, cut, paste, cut line to/from clipboard\nAlt-1 .. Alt-9 switch virtual screens (svgalib and fb)",

View file

@ -4375,8 +4375,8 @@ static_const struct translation translation_czech [] = {
{ "Verze" }, { "Verze" },
{ "Informace o verzi" }, { "Informace o verzi" },
{ "Verze Linksu" }, { "Verze Linksu" },
{ "Typ opera\350n\355ho syst\351mu" }, { "Typ syst\351mu" },
{ "Verze opera\350n\355ho syst\351mu" }, { "Verze syst\351mu" },
{ "Kompil\341tor" }, { "Kompil\341tor" },
{ "Velikost slova" }, { "Velikost slova" },
{ "Pam\354\273" }, { "Pam\354\273" },
@ -6550,8 +6550,8 @@ static_const struct translation translation_english [] = {
{ "Version" }, { "Version" },
{ "Version information" }, { "Version information" },
{ "Links version" }, { "Links version" },
{ "Operating system type" }, { "System type" },
{ "Operating system version" }, { "System version" },
{ "Compiler" }, { "Compiler" },
{ "Word size" }, { "Word size" },
{ "Memory" }, { "Memory" },
@ -6564,10 +6564,10 @@ static_const struct translation translation_english [] = {
{ "Not enabled in system" }, { "Not enabled in system" },
{ "Local network only" }, { "Local network only" },
{ "UTF-8 terminal" }, { "UTF-8 terminal" },
{ "Compression methods" }, { "Compression" },
{ "Encryption" }, { "Encryption" },
{ "no certificate verification" }, { "no certificate verification" },
{ "GPM mouse driver" }, { "Mouse driver" },
{ "Xterm for OS/2" }, { "Xterm for OS/2" },
{ "Graphics mode" }, { "Graphics mode" },
{ "Image libraries" }, { "Image libraries" },
@ -6579,7 +6579,7 @@ static_const struct translation translation_english [] = {
{ "thread" }, { "thread" },
{ "threads" }, { "threads" },
{ "threads" }, { "threads" },
{ "Configuration directory" }, { "Home directory" },
{ "None" }, { "None" },
{ "Keys" }, { "Keys" },
{ "ESC display menu\n^C, q, Q quit\np, l scroll up, down\n[, ] scroll left, right\nup, down select link\nH, L select top/bottom link\n-> follow link\n<-, z go back\n', x go forward\nTAB switch frames\ng go to url\nG go to url based on current url\n^G go to url based on current link\n* toggle image displaying\n^W complete URL or search string\n^B,^X,^V,^K copy, cut, paste, cut line to/from clipboard\nAlt-1 .. Alt-9 switch virtual screens (svgalib and fb)" }, { "ESC display menu\n^C, q, Q quit\np, l scroll up, down\n[, ] scroll left, right\nup, down select link\nH, L select top/bottom link\n-> follow link\n<-, z go back\n', x go forward\nTAB switch frames\ng go to url\nG go to url based on current url\n^G go to url based on current link\n* toggle image displaying\n^W complete URL or search string\n^B,^X,^V,^K copy, cut, paste, cut line to/from clipboard\nAlt-1 .. Alt-9 switch virtual screens (svgalib and fb)" },

View file

@ -75,19 +75,19 @@ File links.crt
File links.exe File links.exe
File links-g.exe File links-g.exe
File dll\cygwin1.dll File dll\cygwin1.dll
File c:\cygwin\bin\cygEGL-1.dll
File c:\cygwin\bin\cygGL-1.dll
File c:\cygwin\bin\cygX11-6.dll File c:\cygwin\bin\cygX11-6.dll
File c:\cygwin\bin\cygX11-xcb-1.dll
File c:\cygwin\bin\cygXau-6.dll File c:\cygwin\bin\cygXau-6.dll
File c:\cygwin\bin\cygXdmcp-6.dll File c:\cygwin\bin\cygXdmcp-6.dll
File c:\cygwin\bin\cygXext-6.dll File c:\cygwin\bin\cygXext-6.dll
File c:\cygwin\bin\cygXrender-1.dll File c:\cygwin\bin\cygXrender-1.dll
File c:\cygwin\bin\cygbrotlidec-1.dll
File c:\cygwin\bin\cygbrotlicommon-1.dll
File c:\cygwin\bin\cygbz2-1.dll File c:\cygwin\bin\cygbz2-1.dll
File c:\cygwin\bin\cygcairo-2.dll File c:\cygwin\bin\cygcairo-2.dll
File c:\cygwin\bin\cygcroco-0.6-3.dll File c:\cygwin\bin\cygcroco-0.6-3.dll
File c:\cygwin\bin\cygcrypto-1.1.dll File c:\cygwin\bin\cygcrypto-1.0.0.dll
File c:\cygwin\bin\cygdatrie-1.dll File c:\cygwin\bin\cygdatrie-1.dll
File c:\cygwin\bin\cygdeflate-0.dll
File c:\cygwin\bin\cygevent-2-0-5.dll File c:\cygwin\bin\cygevent-2-0-5.dll
File c:\cygwin\bin\cygexpat-1.dll File c:\cygwin\bin\cygexpat-1.dll
File c:\cygwin\bin\cygffi-6.dll File c:\cygwin\bin\cygffi-6.dll
@ -96,6 +96,7 @@ File c:\cygwin\bin\cygfreetype-6.dll
File c:\cygwin\bin\cyggcc_s-1.dll File c:\cygwin\bin\cyggcc_s-1.dll
File c:\cygwin\bin\cyggdk_pixbuf-2.0-0.dll File c:\cygwin\bin\cyggdk_pixbuf-2.0-0.dll
File c:\cygwin\bin\cyggio-2.0-0.dll File c:\cygwin\bin\cyggio-2.0-0.dll
File c:\cygwin\bin\cygglapi-0.dll
File c:\cygwin\bin\cygglib-2.0-0.dll File c:\cygwin\bin\cygglib-2.0-0.dll
File c:\cygwin\bin\cyggmodule-2.0-0.dll File c:\cygwin\bin\cyggmodule-2.0-0.dll
File c:\cygwin\bin\cyggobject-2.0-0.dll File c:\cygwin\bin\cyggobject-2.0-0.dll
@ -114,18 +115,16 @@ File c:\cygwin\bin\cygpcre-1.dll
File c:\cygwin\bin\cygpixman-1-0.dll File c:\cygwin\bin\cygpixman-1-0.dll
File c:\cygwin\bin\cygpng16-16.dll File c:\cygwin\bin\cygpng16-16.dll
File c:\cygwin\bin\cygrsvg-2-2.dll File c:\cygwin\bin\cygrsvg-2-2.dll
File c:\cygwin\bin\cygssl-1.1.dll File c:\cygwin\bin\cygssl-1.0.0.dll
File c:\cygwin\bin\cygstdc++-6.dll File c:\cygwin\bin\cygstdc++-6.dll
File c:\cygwin\bin\cygthai-0.dll File c:\cygwin\bin\cygthai-0.dll
File c:\cygwin\bin\cygtiff-6.dll File c:\cygwin\bin\cygtiff-6.dll
File c:\cygwin\bin\cyguuid-1.dll
File c:\cygwin\bin\cygwebp-7.dll
File c:\cygwin\bin\cygxcb-1.dll File c:\cygwin\bin\cygxcb-1.dll
File c:\cygwin\bin\cygxcb-glx-0.dll
File c:\cygwin\bin\cygxcb-render-0.dll File c:\cygwin\bin\cygxcb-render-0.dll
File c:\cygwin\bin\cygxcb-shm-0.dll File c:\cygwin\bin\cygxcb-shm-0.dll
File c:\cygwin\bin\cygxml2-2.dll File c:\cygwin\bin\cygxml2-2.dll
File c:\cygwin\bin\cygz.dll File c:\cygwin\bin\cygz.dll
File c:\cygwin\bin\cygzstd-1.dll
;Store installation folder ;Store installation folder
WriteRegStr HKCU "Software\Links" "" $INSTDIR WriteRegStr HKCU "Software\Links" "" $INSTDIR
@ -169,19 +168,20 @@ Delete "$INSTDIR\README"
Delete "$INSTDIR\links.crt" Delete "$INSTDIR\links.crt"
Delete "$INSTDIR\links.exe" Delete "$INSTDIR\links.exe"
Delete "$INSTDIR\links-g.exe" Delete "$INSTDIR\links-g.exe"
Delete "$INSTDIR\cygwin1.dll"
Delete "$INSTDIR\cygEGL-1.dll"
Delete "$INSTDIR\cygGL-1.dll"
Delete "$INSTDIR\cygX11-6.dll" Delete "$INSTDIR\cygX11-6.dll"
Delete "$INSTDIR\cygX11-xcb-1.dll"
Delete "$INSTDIR\cygXau-6.dll" Delete "$INSTDIR\cygXau-6.dll"
Delete "$INSTDIR\cygXdmcp-6.dll" Delete "$INSTDIR\cygXdmcp-6.dll"
Delete "$INSTDIR\cygXext-6.dll" Delete "$INSTDIR\cygXext-6.dll"
Delete "$INSTDIR\cygXrender-1.dll" Delete "$INSTDIR\cygXrender-1.dll"
Delete "$INSTDIR\cygbrotlicommon-1.dll"
Delete "$INSTDIR\cygbrotlidec-1.dll"
Delete "$INSTDIR\cygbz2-1.dll" Delete "$INSTDIR\cygbz2-1.dll"
Delete "$INSTDIR\cygcairo-2.dll" Delete "$INSTDIR\cygcairo-2.dll"
Delete "$INSTDIR\cygcroco-0.6-3.dll" Delete "$INSTDIR\cygcroco-0.6-3.dll"
Delete "$INSTDIR\cygcrypto-1.1.dll" Delete "$INSTDIR\cygcrypto-1.0.0.dll"
Delete "$INSTDIR\cygdatrie-1.dll" Delete "$INSTDIR\cygdatrie-1.dll"
Delete "$INSTDIR\cygdeflate-0.dll"
Delete "$INSTDIR\cygevent-2-0-5.dll" Delete "$INSTDIR\cygevent-2-0-5.dll"
Delete "$INSTDIR\cygexpat-1.dll" Delete "$INSTDIR\cygexpat-1.dll"
Delete "$INSTDIR\cygffi-6.dll" Delete "$INSTDIR\cygffi-6.dll"
@ -190,6 +190,7 @@ Delete "$INSTDIR\cygfreetype-6.dll"
Delete "$INSTDIR\cyggcc_s-1.dll" Delete "$INSTDIR\cyggcc_s-1.dll"
Delete "$INSTDIR\cyggdk_pixbuf-2.0-0.dll" Delete "$INSTDIR\cyggdk_pixbuf-2.0-0.dll"
Delete "$INSTDIR\cyggio-2.0-0.dll" Delete "$INSTDIR\cyggio-2.0-0.dll"
Delete "$INSTDIR\cygglapi-0.dll"
Delete "$INSTDIR\cygglib-2.0-0.dll" Delete "$INSTDIR\cygglib-2.0-0.dll"
Delete "$INSTDIR\cyggmodule-2.0-0.dll" Delete "$INSTDIR\cyggmodule-2.0-0.dll"
Delete "$INSTDIR\cyggobject-2.0-0.dll" Delete "$INSTDIR\cyggobject-2.0-0.dll"
@ -208,19 +209,16 @@ Delete "$INSTDIR\cygpcre-1.dll"
Delete "$INSTDIR\cygpixman-1-0.dll" Delete "$INSTDIR\cygpixman-1-0.dll"
Delete "$INSTDIR\cygpng16-16.dll" Delete "$INSTDIR\cygpng16-16.dll"
Delete "$INSTDIR\cygrsvg-2-2.dll" Delete "$INSTDIR\cygrsvg-2-2.dll"
Delete "$INSTDIR\cygssl-1.1.dll" Delete "$INSTDIR\cygssl-1.0.0.dll"
Delete "$INSTDIR\cygstdc++-6.dll" Delete "$INSTDIR\cygstdc++-6.dll"
Delete "$INSTDIR\cygthai-0.dll" Delete "$INSTDIR\cygthai-0.dll"
Delete "$INSTDIR\cygtiff-6.dll" Delete "$INSTDIR\cygtiff-6.dll"
Delete "$INSTDIR\cyguuid-1.dll"
Delete "$INSTDIR\cygwebp-7.dll"
Delete "$INSTDIR\cygwin1.dll"
Delete "$INSTDIR\cygxcb-1.dll" Delete "$INSTDIR\cygxcb-1.dll"
Delete "$INSTDIR\cygxcb-glx-0.dll"
Delete "$INSTDIR\cygxcb-render-0.dll" Delete "$INSTDIR\cygxcb-render-0.dll"
Delete "$INSTDIR\cygxcb-shm-0.dll" Delete "$INSTDIR\cygxcb-shm-0.dll"
Delete "$INSTDIR\cygxml2-2.dll" Delete "$INSTDIR\cygxml2-2.dll"
Delete "$INSTDIR\cygz.dll" Delete "$INSTDIR\cygz.dll"
Delete "$INSTDIR\cygzstd-1.dll"
Delete "$INSTDIR\.links\*" Delete "$INSTDIR\.links\*"
RMDir "$INSTDIR\.links" RMDir "$INSTDIR\.links"

View file

@ -1,7 +1,7 @@
<WARPIN> <WARPIN>
<HEAD> <HEAD>
<PCK INDEX="1" <PCK INDEX="1"
PACKAGEID="Mikulas Patocka\Links\Base package\2\29" PACKAGEID="Mikulas Patocka\Links\Base package\2\30"
TARGET="?:\Links" TARGET="?:\Links"
SELECT SELECT
TITLE="Links" TITLE="Links"

View file

@ -85,14 +85,15 @@ File c:\cygwin64\bin\cygbrotlicommon-1.dll
File c:\cygwin64\bin\cygbz2-1.dll File c:\cygwin64\bin\cygbz2-1.dll
File c:\cygwin64\bin\cygcairo-2.dll File c:\cygwin64\bin\cygcairo-2.dll
File c:\cygwin64\bin\cygcroco-0.6-3.dll File c:\cygwin64\bin\cygcroco-0.6-3.dll
File c:\cygwin64\bin\cygcrypto-1.1.dll File c:\cygwin64\bin\cygcrypto-3.dll
File c:\cygwin64\bin\cygdatrie-1.dll File c:\cygwin64\bin\cygdatrie-1.dll
File c:\cygwin64\bin\cygdeflate-0.dll File c:\cygwin64\bin\cygdeflate-0.dll
File c:\cygwin64\bin\cygexpat-1.dll File c:\cygwin64\bin\cygexpat-1.dll
File c:\cygwin64\bin\cygevent-2-1-7.dll File c:\cygwin64\bin\cygevent-2-1-7.dll
File c:\cygwin64\bin\cygffi-6.dll File c:\cygwin64\bin\cygffi-8.dll
File c:\cygwin64\bin\cygfontconfig-1.dll File c:\cygwin64\bin\cygfontconfig-1.dll
File c:\cygwin64\bin\cygfreetype-6.dll File c:\cygwin64\bin\cygfreetype-6.dll
File c:\cygwin64\bin\cygfribidi-0.dll
File c:\cygwin64\bin\cyggcc_s-seh-1.dll File c:\cygwin64\bin\cyggcc_s-seh-1.dll
File c:\cygwin64\bin\cyggdk_pixbuf-2.0-0.dll File c:\cygwin64\bin\cyggdk_pixbuf-2.0-0.dll
File c:\cygwin64\bin\cyggio-2.0-0.dll File c:\cygwin64\bin\cyggio-2.0-0.dll
@ -115,7 +116,7 @@ File c:\cygwin64\bin\cygpixman-1-0.dll
File c:\cygwin64\bin\cygpng16-16.dll File c:\cygwin64\bin\cygpng16-16.dll
File c:\cygwin64\bin\cygrsvg-2-2.dll File c:\cygwin64\bin\cygrsvg-2-2.dll
File c:\cygwin64\bin\cygsharpyuv-0.dll File c:\cygwin64\bin\cygsharpyuv-0.dll
File c:\cygwin64\bin\cygssl-1.1.dll File c:\cygwin64\bin\cygssl-3.dll
File c:\cygwin64\bin\cygstdc++-6.dll File c:\cygwin64\bin\cygstdc++-6.dll
File c:\cygwin64\bin\cygthai-0.dll File c:\cygwin64\bin\cygthai-0.dll
File c:\cygwin64\bin\cygtiff-7.dll File c:\cygwin64\bin\cygtiff-7.dll
@ -170,6 +171,7 @@ Delete "$INSTDIR\README"
Delete "$INSTDIR\links.crt" Delete "$INSTDIR\links.crt"
Delete "$INSTDIR\links.exe" Delete "$INSTDIR\links.exe"
Delete "$INSTDIR\links-g.exe" Delete "$INSTDIR\links-g.exe"
Delete "$INSTDIR\cygwin1.dll"
Delete "$INSTDIR\cygX11-6.dll" Delete "$INSTDIR\cygX11-6.dll"
Delete "$INSTDIR\cygXau-6.dll" Delete "$INSTDIR\cygXau-6.dll"
Delete "$INSTDIR\cygXdmcp-6.dll" Delete "$INSTDIR\cygXdmcp-6.dll"
@ -180,14 +182,15 @@ Delete "$INSTDIR\cygbrotlidec-1.dll"
Delete "$INSTDIR\cygbz2-1.dll" Delete "$INSTDIR\cygbz2-1.dll"
Delete "$INSTDIR\cygcairo-2.dll" Delete "$INSTDIR\cygcairo-2.dll"
Delete "$INSTDIR\cygcroco-0.6-3.dll" Delete "$INSTDIR\cygcroco-0.6-3.dll"
Delete "$INSTDIR\cygcrypto-1.1.dll" Delete "$INSTDIR\cygcrypto-3.dll"
Delete "$INSTDIR\cygdatrie-1.dll" Delete "$INSTDIR\cygdatrie-1.dll"
Delete "$INSTDIR\cygdeflate-0.dll" Delete "$INSTDIR\cygdeflate-0.dll"
Delete "$INSTDIR\cygevent-2-1-7.dll" Delete "$INSTDIR\cygevent-2-1-7.dll"
Delete "$INSTDIR\cygexpat-1.dll" Delete "$INSTDIR\cygexpat-1.dll"
Delete "$INSTDIR\cygffi-6.dll" Delete "$INSTDIR\cygffi-8.dll"
Delete "$INSTDIR\cygfontconfig-1.dll" Delete "$INSTDIR\cygfontconfig-1.dll"
Delete "$INSTDIR\cygfreetype-6.dll" Delete "$INSTDIR\cygfreetype-6.dll"
Delete "$INSTDIR\cygfribidi-0.dll"
Delete "$INSTDIR\cyggcc_s-seh-1.dll" Delete "$INSTDIR\cyggcc_s-seh-1.dll"
Delete "$INSTDIR\cyggdk_pixbuf-2.0-0.dll" Delete "$INSTDIR\cyggdk_pixbuf-2.0-0.dll"
Delete "$INSTDIR\cyggio-2.0-0.dll" Delete "$INSTDIR\cyggio-2.0-0.dll"
@ -210,13 +213,12 @@ Delete "$INSTDIR\cygpixman-1-0.dll"
Delete "$INSTDIR\cygpng16-16.dll" Delete "$INSTDIR\cygpng16-16.dll"
Delete "$INSTDIR\cygrsvg-2-2.dll" Delete "$INSTDIR\cygrsvg-2-2.dll"
Delete "$INSTDIR\cygsharpyuv-0.dll" Delete "$INSTDIR\cygsharpyuv-0.dll"
Delete "$INSTDIR\cygssl-1.1.dll" Delete "$INSTDIR\cygssl-3.dll"
Delete "$INSTDIR\cygstdc++-6.dll" Delete "$INSTDIR\cygstdc++-6.dll"
Delete "$INSTDIR\cygthai-0.dll" Delete "$INSTDIR\cygthai-0.dll"
Delete "$INSTDIR\cygtiff-7.dll" Delete "$INSTDIR\cygtiff-7.dll"
Delete "$INSTDIR\cyguuid-1.dll" Delete "$INSTDIR\cyguuid-1.dll"
Delete "$INSTDIR\cygwebp-7.dll" Delete "$INSTDIR\cygwebp-7.dll"
Delete "$INSTDIR\cygwin1.dll"
Delete "$INSTDIR\cygxcb-1.dll" Delete "$INSTDIR\cygxcb-1.dll"
Delete "$INSTDIR\cygxcb-render-0.dll" Delete "$INSTDIR\cygxcb-render-0.dll"
Delete "$INSTDIR\cygxcb-shm-0.dll" Delete "$INSTDIR\cygxcb-shm-0.dll"

View file

@ -90,7 +90,7 @@ static inline int dir_sep(unsigned char x) { return x == '/' || x == '\\'; }
static inline int dir_sep(unsigned char x) { return x == '/' || x == '\\'; } static inline int dir_sep(unsigned char x) { return x == '/' || x == '\\'; }
#define NEWLINE "\r\n" #define NEWLINE "\r\n"
/*#define NO_ASYNC_LOOKUP*/ #define NO_ASYNC_LOOKUP /* Cygwin 3.5.3 has some bug that async lookup doesn't work when started from a detached thread */
#define SYSTEM_ID SYS_WIN_32 #define SYSTEM_ID SYS_WIN_32
#define SYSTEM_NAME "Win32" #define SYSTEM_NAME "Win32"
#define DEFAULT_SHELL "cmd.exe" #define DEFAULT_SHELL "cmd.exe"

View file

@ -123,10 +123,14 @@ LC_ALL=
. .
/DELETE1/-1,/DELETE1/d /DELETE1/-1,/DELETE1/d
/DELETE2/-1,/DELETE2/d /DELETE2/-1,/DELETE2/d
,s/^main/int main/
,s/XtMalloc/'int XtMalloc'/
,s/foo()/int foo()/
w w
q q
EOS EOS
sed -i '/^#include <stdio.h>/a#include <stdlib.h>' configure
sed -i '/^#include <ctype.h>/a#include <stdlib.h>' configure
else else
exit exit
fi fi

View file

@ -85,7 +85,7 @@ void add_bytes_to_str(unsigned char **s, int *l, unsigned char *a, size_t ll)
(defined(__ARM_ARCH) && __ARM_ARCH < 5) || \ (defined(__ARM_ARCH) && __ARM_ARCH < 5) || \
(defined(__sparc__) && (!defined(__VIS__) || __VIS__ < 0x300)) ||\ (defined(__sparc__) && (!defined(__VIS__) || __VIS__ < 0x300)) ||\
defined(__hppa) || \ defined(__hppa) || \
defined(__riscv) || \ (defined(__riscv) && !defined(__riscv_zbb)) || \
defined(__sh__)) defined(__sh__))
if (!(sizeof(unsigned) & (sizeof(unsigned) - 1))) { if (!(sizeof(unsigned) & (sizeof(unsigned) - 1))) {
new_length = 2U << ((sizeof(unsigned) * 8 - 1) new_length = 2U << ((sizeof(unsigned) * 8 - 1)

1537
suffix.inc

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -969,6 +969,7 @@ static void redraw_screen(struct terminal *term)
int l = 0; int l = 0;
int print_next = 0; int print_next = 0;
struct term_spec *s; struct term_spec *s;
n_chars = n_chars + 0; /* avoid warning */
NO_GFX; NO_GFX;
if (!term->dirty || (term->master && is_blocked())) return; if (!term->dirty || (term->master && is_blocked())) return;
a = init_str(); a = init_str();

115
x.c
View file

@ -217,13 +217,15 @@ static GC x_normal_gc = 0, x_copy_gc = 0, x_drawbitmap_gc = 0, x_scroll_gc = 0;
static long x_normal_gc_color; static long x_normal_gc_color;
static struct rect x_scroll_gc_rect; static struct rect x_scroll_gc_rect;
static Colormap x_default_colormap, x_colormap; static Colormap x_default_colormap, x_colormap;
static Atom x_delete_window_atom, x_wm_protocols_atom, x_sel_atom, x_targets_atom, x_utf8_string_atom; static Atom x_delete_window_atom, x_wm_protocols_atom, x_sel_atom, x_targets_atom, x_utf8_string_atom, x__net_supporting_wm_check, x__net_wm_name;
static Pixmap x_icon = 0; static Pixmap x_icon = 0;
#ifdef X_INPUT_METHOD #ifdef X_INPUT_METHOD
static XIM xim = NULL; static XIM xim = NULL;
#endif #endif
static int prefer_utf8_window_title;
extern struct graphics_driver x_driver; extern struct graphics_driver x_driver;
static unsigned char *x_driver_param = NULL; static unsigned char *x_driver_param = NULL;
@ -1526,6 +1528,49 @@ static void x_process_events(void *data)
#endif #endif
} }
static unsigned_char_p x_get_property_string(Window w, Atom prop, Atom type, Bool del)
{
unsigned_char_p buffer;
unsigned long pty_size, pty_items;
int pty_format, ret;
Atom pty_type;
/* Get size and type of property */
ret = XGetWindowProperty(
x_display,
w,
prop,
0,
0,
False,
AnyPropertyType,
&pty_type,
&pty_format,
&pty_items,
&pty_size,
&buffer);
/*debug("1: %d %d %d %ld %ld %p", ret, pty_type, pty_format, pty_items, pty_size, buffer);*/
if (ret != Success || !buffer) return NULL;
XFree(buffer);
ret = XGetWindowProperty(
x_display,
w,
prop,
0,
(long)pty_size,
del,
AnyPropertyType,
&pty_type,
&pty_format,
&pty_items,
&pty_size,
&buffer
);
/*debug("2: %d %d %d %ld %ld %p", ret, pty_type, pty_format, pty_items, pty_size, buffer);*/
if (ret != Success || !buffer) return NULL;
return buffer;
}
static void x_after_fork(void) static void x_after_fork(void)
{ {
@ -1814,10 +1859,35 @@ visual_found:
x_sel_atom = XInternAtom(x_display, "SEL_PROP", False); x_sel_atom = XInternAtom(x_display, "SEL_PROP", False);
x_targets_atom = XInternAtom(x_display, "TARGETS", False); x_targets_atom = XInternAtom(x_display, "TARGETS", False);
x_utf8_string_atom = XInternAtom(x_display, "UTF8_STRING", False); x_utf8_string_atom = XInternAtom(x_display, "UTF8_STRING", False);
x__net_supporting_wm_check = XInternAtom(x_display, "_NET_SUPPORTING_WM_CHECK", False);
x__net_wm_name = XInternAtom(x_display, "_NET_WM_NAME", False);
if (x_have_palette) win_attr.colormap = x_colormap; if (x_have_palette) win_attr.colormap = x_colormap;
else win_attr.colormap = x_default_colormap; else win_attr.colormap = x_default_colormap;
prefer_utf8_window_title = 0;
#if defined(HAVE_XSUPPORTSLOCALE) && defined(HAVE_XMBTEXTLISTTOTEXTPROPERTY) && X_HAVE_UTF8_STRING
{
unsigned_char_p buffer;
Window win;
buffer = x_get_property_string(x_root_window, x__net_supporting_wm_check, XA_WINDOW, False);
if (!buffer)
goto skip_wm_name;
win = *(Window *)buffer;
XFree(buffer);
x_prepare_for_failure(X_GetProperty);
buffer = x_get_property_string(win, x__net_wm_name, AnyPropertyType, False);
if (x_test_for_failure())
goto skip_wm_name;
if (!buffer)
goto skip_wm_name;
if (!strcasecmp(cast_const_char buffer, "kwin"))
prefer_utf8_window_title = 1;
XFree(buffer);
}
skip_wm_name:
#endif
fake_window = XCreateWindow( fake_window = XCreateWindow(
x_display, x_display,
x_root_window, x_root_window,
@ -2751,7 +2821,7 @@ retry_encode_ascii:
if (XSupportsLocale()) { if (XSupportsLocale()) {
ret = XmbTextListToTextProperty(x_display, &xx_str, 1, XStdICCTextStyle, &windowName); ret = XmbTextListToTextProperty(x_display, &xx_str, 1, XStdICCTextStyle, &windowName);
#ifdef X_HAVE_UTF8_STRING #ifdef X_HAVE_UTF8_STRING
if (ret > 0) { if (ret > 0 || (!ret && prefer_utf8_window_title)) {
XFree(windowName.value); XFree(windowName.value);
ret = XmbTextListToTextProperty(x_display, &xx_str, 1, XUTF8StringStyle, &windowName); ret = XmbTextListToTextProperty(x_display, &xx_str, 1, XUTF8StringStyle, &windowName);
if (ret < 0) { if (ret < 0) {
@ -2916,48 +2986,13 @@ static unsigned char *x_get_clipboard_text(void)
} }
if (event.xselection.property) { if (event.xselection.property) {
unsigned_char_p buffer; unsigned_char_p buffer;
unsigned long pty_size, pty_items;
int pty_format, ret;
Atom pty_type;
if (event.xselection.target != type_atom) goto no_new_sel; if (event.xselection.target != type_atom) goto no_new_sel;
if (event.xselection.property != x_sel_atom) goto no_new_sel; if (event.xselection.property != x_sel_atom) goto no_new_sel;
buffer = x_get_property_string(fake_window, event.xselection.property, True, AnyPropertyType);
/* Get size and type of property */ if (!buffer)
ret = XGetWindowProperty( goto no_new_sel;
x_display,
fake_window,
event.xselection.property,
0,
0,
False,
AnyPropertyType,
&pty_type,
&pty_format,
&pty_items,
&pty_size,
&buffer);
if (ret != Success) goto no_new_sel;
XFree(buffer);
ret = XGetWindowProperty(
x_display,
fake_window,
event.xselection.property,
0,
(long)pty_size,
True,
AnyPropertyType,
&pty_type,
&pty_format,
&pty_items,
&pty_size,
&buffer
);
if (ret != Success) goto no_new_sel;
pty_size = (pty_format>>3) * pty_items;
x_clear_clipboard(); x_clear_clipboard();
if (type_atom == x_utf8_string_atom) { if (type_atom == x_utf8_string_atom) {