Age | Commit message (Collapse) | Author |
|
|
|
* sze/edlin_understand_keys/OTP-11251:
Added primary bootstrap
erts: fixed documentation regarding tty and arrow keys
make edlin understand a few important control keys
|
|
|
|
The actual port id is used to create a key from the
pointer value which is the ErlDrvPort. To do this
a new driver api function driver_async_port_key is
added and the driver API minor version is updated.
The documentation is updated and the faulty description of
how to spread ports over async threads is updated to
use the new API.
Testcase also added.
|
|
|
|
|
|
* maint:
erts: Fix print out of acul option in crash dump
|
|
* lukas/erts/crash_dump_acul/OTP-11264:
erts: Fix print out of acul option in crash dump
|
|
* lukas/erts/efile_undef_behaviour/OTP-11246:
erts: Fix bug in translating ev macros to functions
|
|
|
|
* maint:
erts: Fix bug in translating ev macros to functions
Prepare release
PER, UPER: Fix encoding/decoding of open types greater than 16K
|
|
* lukas/erts/efile_undef_behaviour/OTP-11246:
erts: Fix bug in translating ev macros to functions
|
|
None of the OTP linked-in driver are supported
|
|
Both crypto and asn1 are supported.
|
|
|
|
* maint:
erlc_SUITE: Test the -M* options
|
|
|
|
|
|
* maint:
erts: Refactor non-pure macros to functions
|
|
* lukas/erts/efile_undef_behaviour/OTP-11246:
erts: Refactor non-pure macros to functions
|
|
* pan/update_pcre_8.33:
Workaround TR gnu/181328, GCC 4.2.1 20070831 on FreeBSD 9.1
Clarify relation between erts_iolist_{size|to_buf}
Fix backslash in titles of manpages
Correct UTF-8 in stdlib's notes.xml
Add more tests for corner error cases in erl_bif_re.c
Add documentation of report_errors and match_limit(_recursion)
Add match_limit and match_limit_recursion options
Add return_errors option to re:run/3
Add README for updating PCRE
Add documentation of extensions to re module
Add new options to Erlang re interface and mend dupnames
Update PCRE doc part of re.xml to PCRE 8.33 state
Integrate new PCRE test suites
Integrate patch for PCRE bug id 1370
Handle CRLF correctly in global regexp
Add erts_prefix to pcre_library and update erl_bif_re
Update to PCRE 8.33, w/o the erts_ prefix added
OTP-11204
OTP-11205
OTP-10285
|
|
The bug manifests so that initialization of an automatic variable
happens after a pointer to the variable is dereferenced, causing
build_exec_return to take the wrong branch by default.
The bug is verified to happen even outside the VM and
is reported to FreeBSD as trouble ID gnu/181328.
The workaround is a slight code rewrite which is optimized differently.
Also removed two warnings about dereferencing type-punned
pointers, which did not affect the bug.
|
|
|
|
|
|
This is needed as some gcc versions seems to optimize this undefined
behaviour in a way which breaks this code.
|
|
* maint:
erts: Do not enable TRACE_SILENT when testing a ms
|
|
* lukas/erts/match_spec_test_silent/OTP-11232:
erts: Do not enable TRACE_SILENT when testing a ms
|
|
|
|
* sverk/ptab-race:
erts: Fix race in ptab that can cause PID mix-ups
OTP-11225
|
|
Just some clarifying comments to future progremmers to keep the relation
between error returns from the two functions.
|
|
Added to re:run and sets the corresponding fields in 'extra' struct
for the PCRE match engine. The result can be viewed by also
setting 'report_errors' when matching.
Some housekeeping was also done...
The offset option also did not properly check for offset's >= 0.
Change nomatch to BADARG when pre-compiled mp() is faked:
By constructing a 5-tuple with faked content but the right data types,
you could do a re:run which returned nomatch when in fact the mp() was
bad. The cheapest solution is to check the return from pcre_exec
better.
Remove unreachable code in erts_bif_re.c:
Replaced tests for things that logically simply
cannot happen with ASSERT.
|
|
|
|
|
|
Add notempty_atstart, no_start_optimize, ucp and
never_utf options from new PCRE version.
Use the new notempty_atstart in global matching.
Add inspect/2 function
Correctly handle dupnames when capturing a name, as
in Perl, get the leftmost matching occurence.
Also added all_names, to get all the names in the pattern
in alphabetical (name) order.
To be able to use this in global matching, an inspect
function that can dig out a namelist was added.
|
|
|
|
|
|
* olgeni/erl_driver-man-fixes/OTP-11227:
Misc. corrections for erl_driver(3)
|
|
* maint:
etp: Do not use name as beam.smp is the name on Linux
|
|
* lukas/erts/etp-thr/OTPO-11220:
etp: Do not use name as beam.smp is the name on Linux
|
|
|
|
* maint:
erts: Create gdb pything script for thread listing
|
|
* lukas/erts/etp-thr/OTPO-11220:
erts: Create gdb pything script for thread listing
|
|
* maint:
Add smoke tests
|
|
* lukas/smoketests/OTP-11221:
Add smoke tests
|
|
* maint:
Bailout if no native implementations are found
|
|
* lukas/erts/ethr_smp_req_native_compiletime/OTP-11196:
Bailout if no native implementations are found
|
|
Since: R16B01
Symptom: A spawned process may get the same PID as an existing
process. The new process will "steal" the PID and make the old process
unreachable through the PID.
The problem also applies to port identities but has only been seen
for processes.
Conditions: SMP emulator with at least two scheduler threads. Rapid
spawning and termination of a large number of processes. A small
number of free slots in the process table will also increase the risk
for this bug.
Workaround: Use command line options "+P legacy" and "+Q legacy"
Cause: The race happens if a process terminates and gets stalled while
releasing its process table slot. The stall has to be so long (due to OS
preemptive scheduling most probably) for other schedluer threads to
consume all other free slots for newly spawn processes.
Fix: Write invalid-markers in the free-pid-table and do atomic exhange
operations in retry-loops to make sure each thread gets a unique PID.
|
|
- Remove trailing whitespaces
- Spelling fixes
- Replace "deferred" with "deprecated" where applicable
- Remove reference to non-existing "async_ready" entry point
|
|
Hi Fredrik,
> I've gotten some feedback from your review,
> You need to add documentation under Erts-> "User's Guide" -> "tty - A
> command line interface"
>
> You need to add testcase in interactive_shell_SUITE a simplified
> example of how this testcase could look like;
> ctrl_w_and_ctrl_u(_Conf) ->
> rtnode([{putline,""}, {putline, "2."}, {getline, "2"},
> {putline,"xxx yy"++[$\^w]++"."}, {getline,"xxx"}, {putline,"xxx
> yy"++[$\^u]++"z."}, {getline,"z"}],[]).
Please find an updated version of the patch attached to this e-mail. I
hope that you still accept it via e-mail because the former patch was
sent the same way ;-).
I have extended the documentation to list the new key combinations and
added tests to make sure they work.
Kind regards,
--
Dr. Stefan Zegenhagen
arcutronix GmbH
Garbsener Landstr. 10
30419 Hannover
Germany
Tel: +49 511 277-2734
Fax: +49 511 277-2709
Email: [email protected]
Web: www.arcutronix.com
*Synchronize the Ethernet*
General Managers: Dipl. Ing. Juergen Schroeder, Dr. Josef Gfrerer -
Legal Form: GmbH, Registered office: Hannover, HRB 202442, Amtsgericht
Hannover; Ust-Id: DE257551767.
Please consider the environment before printing this message.
>From ce4b827c78d18f39bb1146fd2959ffd7ae2b4bb6 Mon Sep 17 00:00:00 2001
From: Stefan Zegenhagen <[email protected]>
Date: Mon, 6 May 2013 14:39:07 +0200
Subject: [PATCH] [EDLIN] support a few more control keys
Add support for the following control keys that many users have become
accustomed to:
- <CTRL>+W : backward kill word
- <CTRL>+U : backward kill line
- <HOME> : goto start of line
- <END> : goto end of line
- <CTRL>+<LEFT> : backward word
- <CTRL>+<RIGHT> : forward word
It seems that the <CTRL>+<LEFT|RIGHT> control key sequences are
different between terminal emulators, therefore a few possible
combinations were added (similar to how libreadline is configured).
Documentation and tests are extended to reflect the new functionality.
|
|
|