1
0
mirror of https://github.com/rkd77/elinks.git synced 2024-12-04 14:46:47 -05:00
Commit Graph

111 Commits

Author SHA1 Message Date
Witold Filipczyk
20c161559c [mem_alloc] cast return value 2022-01-16 19:09:27 +01:00
Witold Filipczyk
36a4fc1c2f [module] name - const char * 2022-01-14 21:08:04 +01:00
Witold Filipczyk
dfe9186c87 [main] Added --always-load-config command-line option. Refs #137
This option loads config on 2nd instance of ELinks and next.
It can be useful in alias.
2022-01-04 15:15:39 +01:00
Witold Filipczyk
33a9fea02a [version] Show version of libevent 2021-12-28 17:49:15 +01:00
Witold Filipczyk
571d275759 [version] Show runtime version of decompression libraries 2021-12-27 17:02:58 +01:00
Witold Filipczyk
0ed9511286 [c] compilation fixes on Pi 2021-12-22 16:12:09 +01:00
Witold Filipczyk
5a14b61c0d [register] Drop register
Compilers are smart and don't need such hints.
2021-12-03 12:34:00 +01:00
Witold Filipczyk
adddbf53fb [quickjs] clearTimeout 2021-12-01 19:27:50 +01:00
Witold Filipczyk
dc12c13244 [quickjs] Test commit. window.alert('Blabla') works. 2021-10-17 18:17:48 +02:00
Witold Filipczyk
4258e248d0 [gettext] Show info about gettext.
gettext (System) means gettext from the libc library.
gettext (ELinks) builtin from src/intl/gettext.
2021-08-15 17:52:54 +02:00
Witold Filipczyk
66305fcb50 [gettext] try system gettext. Refs #62
Now, only meson was changed.
-Dnls=true -Dgettext=true
2021-08-08 21:25:08 +02:00
Witold Filipczyk
36aa04ed12 [time.h] time.h can be included unconditionally 2021-03-19 14:22:04 +01:00
Witold Filipczyk
d20216cf53 [hash] const char * 2021-03-03 14:12:31 +01:00
Witold Filipczyk
0fea79cc8f [cflags] Removed -Wno-pointer-sign
Likely some new bugs were introduced by this change.
The long term goal is clean compilation by g++.
2021-01-02 16:20:27 +01:00
Witold Filipczyk
ee5ec9c287 [dump] Removed silly debug statement. 2020-10-29 20:23:39 +01:00
Witold Filipczyk
d1ecd45828 [mozjs52] It compiles, but often segfaults. No idea yet how to fix it. 2020-10-27 14:53:24 +01:00
Witold Filipczyk
1f57e72212 [mozjs24] Allow build elinks with g++
SpiderMonkey was updated to mozjs24. If you want to build elinks
with ecmascript support, you must compile using g++ with -fpermissive .
There is a lot of warnings.
There are some memleaks in ecmascript code, especially related to JSAutoCompartment.
I don't know yet, where and how to free it.

Debian does not support mozjs24, so I'm going to gradually update SpiderMonkey version.
2020-10-05 20:14:55 +02:00
Witold Filipczyk
5f87bdbcb2 [meson] meson build scripts.
Not finished yet, but I added to motivate myself and others.
The goal is to get a few seconds faster builds.

autotools still will be available.
2020-09-05 22:06:01 +02:00
Witold Filipczyk
c56d11cfb9 [main] Fixed issue with scripting and fork_on_start 2020-05-22 21:52:36 +02:00
Witold Filipczyk
2dcac411a8 [sessions] New option ui.sessions.fork_on_start
Default value of this bool option is 0. Nothing changes in behaviour since 0.13.1.
If you set it to 1, one more process will be started. This main process will handle
only interlink connections, while other processes will be slaves to it.
This will allow to exit first started elinks session without breaking others.
2020-05-21 16:53:43 +02:00
Witold Filipczyk
f89b26d5b2 [interlink] Fixed elinks -remote 'ping()' 2020-05-20 18:35:40 +02:00
Witold Filipczyk
08138487a0 [interlink] Test commit. All terminals - slaves.
Before when master terminal quit session, all slave terminal stopped to work.
There is a workaround. ELinks on master terminal forks on start and becomes slave.
2020-05-17 16:35:58 +02:00
Witold Filipczyk
e532e348f8 [timer] set_event_for_timer is only for libevent 2019-11-16 11:35:18 +01:00
Witold Filipczyk
d56ad7ceb0 [select] restrict_fds was called only with LIBEVENT and POLL 2019-11-16 11:29:06 +01:00
Witold Filipczyk
21b8cf37d9 [select] Fixes based on links code
bittorrent code caused segmentation fault, because get_handler read
outside of current fd range. Workaround is to return NULL.
2019-11-16 09:40:01 +01:00
Witold Filipczyk
558baa830e [select] More code to avoid warning 2019-11-15 16:37:02 +01:00
Witold Filipczyk
90086599da [encoding] Experimental zstd encoding 2019-07-14 18:54:39 +02:00
Witold Filipczyk
3d96b0d7d7 Revert "Compile with C++."
This reverts commit 4f4df33638.
2019-04-21 12:27:40 +02:00
Witold Filipczyk
4f4df33638 Compile with C++.
Weak points:
- alignof
- js problems

Todo:
- make js work with C++ and mozjs-17
- then mozjs-24
- then mozjs-52
- then mozjs-60
- decrease number of warnings
2019-02-17 20:46:16 +01:00
Felix Janda
336e596a83 Rename VA_COPY to va_copy
With this, the C99 standard macro va_copy is used when available
instead of the prestandard __va_copy.
2017-11-23 19:18:20 -05:00
Felix Janda
bfb4733f39 Don't use <sys/signal.h>
This legacy header appears to be unused. Removing its includes
avoids numerous warnings when compiling with musl libc:

/usr/include/sys/signal.h:1:2: warning: #warning redirecting incorrect #include <sys/signal.h> to <signal.h> [-Wcpp]
2017-11-23 17:51:41 -05:00
Witold Filipczyk
c4cb7ed8e5 Beginnings of terminfo support.
--with-terminfo must be added for configure
and --terminfo to command line.
terminfo is only used for output and not all sequences are changed.
2017-11-19 18:29:38 +01:00
Witold Filipczyk
d5261654f4 libev or libevent in About dialog. 2017-11-17 17:33:51 +01:00
Witold Filipczyk
21d36fcbd1 Add --with-libev, because libev is smaller.
When both --with-libev and --with-libevent are used, libev takes
precedence.
2017-11-17 16:34:03 +01:00
Witold Filipczyk
f52e3187e3 Add command line option -no-libevent 2017-11-16 18:23:47 +01:00
Witold Filipczyk
b6fd548049 threads might be NULL for --lookup 2017-11-13 14:44:24 +01:00
Witold Filipczyk
3b6ff1d22f Introduced --with-libevent based on links code
I don't know how to deal with select's exception fds in libevent,
so some functions may not work properly.
2017-11-12 13:41:31 +01:00
Witold Filipczyk
050f304161 poll and EINTRLOOP - added fragment from links 2017-11-11 21:37:08 +01:00
Witold Filipczyk
8c39acc277 Info about brotli. 2017-11-11 16:31:32 +01:00
Witold Filipczyk
da15322705 Cast to (const char *) in strrchr calls 2016-04-20 21:03:27 +02:00
Witold Filipczyk
52d6f37c8e Explicit cast to (const char *) for strchr function (C++) 2016-04-20 19:43:37 +02:00
witekfl
91515990c8 Removed --with-gc and CONFIG_GC related code.
CONFIG_GC was added with SEE, but SEE support was removed, so
I don't see the reason to keep gc.
2013-05-14 15:36:32 +02:00
witekfl
26e41cb6c3 Redefine FD_SETSIZE on Windows. Set it to 4096.
There was hardcoded 4096 for threads size, but below there was:
	assertm(fd >= 0 && fd < FD_SETSIZE,
		"get_handler: handle %d >= FD_SETSIZE %d",
		fd, FD_SETSIZE);
	if_assert_failed return NULL;
which fails for fd > 1024 (1024 was previous value of FD_SETSIZE)
2013-01-05 13:42:35 +01:00
Kalle Olavi Niemitalo
8b00e1ef70 bug 764: Initialize the right member of union option_value
INIT_OPTION used to initialize union option_value at compile time by
casting the default value to LIST_OF(struct option) *, which is the
type of the first member.  On sparc64 and other big-endian systems
where sizeof(int) < sizeof(struct list_head *), this tended to leave
option->value.number as zero, thus messing up OPT_INT and OPT_BOOL
at least.  OPT_LONG however tended to work right.

This would be easy to fix with C99 designated initializers,
but doc/hacking.txt says ELinks must be kept C89 compatible.
Another solution would be to make register_options() read the
value from option->value.tree (the first member), cast it back
to the right type, and write it to the appropriate member;
but that would still require somewhat dubious conversions
between integers, data pointers, and function pointers.

So here's a rather more invasive solution.  Add struct option_init,
which is somewhat similar to struct option but has non-overlapping
members for different types of values, to ensure nothing is lost
in compile-time conversions.  Move unsigned char *path from struct
option_info to struct option_init, and replace struct option_info
with a union that contains struct option_init and struct option.
Now, this union can be initialized with no portability problems,
and register_options() then moves the values from struct option_init
to their final places in struct option.

In my x86 ELinks build with plenty of options configured in, this
change bloated the text section by 340 bytes but compressed the data
section by 2784 bytes, presumably because union option_info is a
pointer smaller than struct option_info was.
(cherry picked from elinks-0.12 commit e5f6592ee2)

Conflicts:
	src/protocol/fsp/fsp.c: All options had been removed in 0.13.GIT.
	src/protocol/smb/smb2.c: Ditto.
2012-11-03 22:16:32 +02:00
witekfl
9543ed96a4 Do not set FD_SETSIZE too high on Windows.
Alloc more space for threads in main/select.c instead.
2012-08-08 22:22:37 +02:00
witekfl
a140e1d79f Set FD_SETSIZE to 1024 on Mingw32.
The default value of FD_SETSIZE on Windows is 64,
but can be bigger if set before including winsock2.h
2012-05-25 17:54:46 +02:00
Kalle Olavi Niemitalo
b40736cafe Merge branch 'elinks-0.12' into elinks-0.13
Conflicts:

	NEWS (merged)
	configure.in (merged)
	doc/man/man1/elinks.1.in (regenerated)
	doc/man/man5/elinks.conf.5 (regenerated)
	doc/man/man5/elinkskeys.5 (regenerated)
	po/fr.po (kept 0.13.GIT version)
	po/pl.po (kept 0.13.GIT version)
2008-09-27 16:28:28 +03:00
Kalle Olavi Niemitalo
a0d624cd61 Hurd bug 22861: Do not select() exceptions from pipes.
The GNU Hurd has a bug that can make select() report an exception in a
pipe even though none has actually occurred.  The typical result is
that ELinks closes the pipe through which it internally passes all
input events, such as keypresses.  It then no longer reacts to what
the user is trying to do.

Work around the Hurd bug by making set_handlers() check whether the
file descriptor refers to a pipe, and if so, pretend the caller did
not provide any handler for exceptions.  This is a minimal change that
avoids slowing down the select() loop itself and does not require
careful analysis of the callers to statically find out which file
descriptors might refer to pipes.  The extra stat() calls may slow
ELinks down somewhat, but anyway it'll work better than it did without
the patch, and if the Hurd bug is ever fixed, we can remove the
workaround at that time.
2008-09-07 22:52:47 +03:00
Kalle Olavi Niemitalo
988cec481b Merge branch 'elinks-0.12' into elinks-0.13
Conflicts:

	NEWS
	configure.in

The following files also conflicted, but they had not been manually
edited in the elinks-0.12 branch after the previous merge, so I just
kept the 0.13.GIT versions:

	doc/man/man1/elinks.1.in
	doc/man/man5/elinks.conf.5
	doc/man/man5/elinkskeys.5
	po/fr.po
	po/pl.po
2008-07-11 22:28:45 +03:00
Kalle Olavi Niemitalo
8ee5e8c4a1 Bug 951: Revert "Garbage-collect SMJS objects before flushing caches."
This reverts commit c33d195ff4.
ELinks no longer needs to collect garbage in this situation
because it can now free cache entries even if the corresponding
SMJS objects remain.
2008-07-08 15:21:07 +03:00