Age | Commit message (Collapse) | Author |
|
|
|
* knewter/bugfix/typo_in_wx_demo:
wx: Fix typo in graphicsContext example
|
|
* scrapinghub/update_session_original_stacktrace:
inets: Return correct stacktrace on session updating failure
|
|
|
|
* vinoski/darwin-vsn-odbc:
Make ODBC configure handle OS X Mavericks and Yosemite
|
|
* siri/test-upgrade:
Add upgrade test in stdlib_SUITE
[ct] Add ct_release_tests.erl
Specify tar-file as basename in upgrade_SUITE
|
|
|
|
Conflicts:
OTP_VERSION
|
|
|
|
|
|
|
|
* maint:
Fix rare race condition in Dets
|
|
The correction is due to the the evil testcase
dets_SUITE:simultaneous_open(). If the process repairing a Dets file
is killed (should normally never happen), and another process tries to
repair the file, a temporary file from the first process could live on
for a while, even after a successful call to file:delete(). This has
only been seen on W-nd-ows, where it is a known problem.
There are other ways to deal with the problem (rename the file; use
some other filename), but we continue using one certain filename in
order to be as backwards compatible as possible.
|
|
* maint:
debugger: clean up Common Test adaption
|
|
* hb/debugger/ct_line_cleanup:
debugger: clean up Common Test adaption
|
|
* hb/dialyzer/compiler_option_asm_removed:
dialyzer: remove recognition of the compiler option 'asm'
|
|
|
|
|
|
|
|
|
|
OTP-12256
* HansN/prop_test_updates:
Optimizations
ssh_eqc_encode_decode.erl compiles
Add timeout to a property test (Thanks John & Tobias @ QuviQ)
Reduce the total testing time for the properties to 20 seconds
No side effects in function arguments
Passing global var to QuickCheck statemachine
|
|
|
|
OTP-12255
* vinsentru/inets_ftp_extension:
INETS FTP: EPSV and EPRT for IPv4 added
|
|
|
|
* qrilka/patch-2/typo-fix:
Minor misprints correction
|
|
|
|
|
|
|
|
* egil/map-type-opt/OTP-12253:
compiler: Type is_nonempty_list optimization
compiler: Type map optimization
|
|
|
|
* peppe/common_test/crash_during_close:
Solve memory consumption problem
Fix problem with buffered async io messages executed too late
Don't generate weird exit if ct_logs has terminated before shut down
OTP-12159
|
|
The compiler option 'asm' has been replaced by 'from_asm' in
Erlang/OTP 18.0.
|
|
The ct_line module was removed some releases ago.
|
|
* lukas/erts/non-blocking-shell:
Fix io:columns/0 timeout when invoked via user
kernel,ssh: Add synchronous user_drv protocol
erts: Make writing to non-tty fds non-blocking
erts: Make tty driver non-blocking
|
|
...using ct_release_test:upgrade/4
|
|
This is a library module for testing release related functionality in
one or more applications. The first version of ct_release_tests
include test of upgrade only.
Note that the hipe application does not support any upgrade, and typer
and dialyzer requires hipe, so these three applications are always
exluded from the test.
|
|
* tuncer/compiler/finalize-asm-deprecation/OTP-12100:
compiler: finalize 18.x 'asm' deprecation
|
|
* maint:
BER decoding: Don't allow primitives with indefinite lengths
|
|
* bjorn/asn1/primitive-indefinite-length/OTP-12205:
BER decoding: Don't allow primitives with indefinite lengths
|
|
|
|
* adelzhang/fix_application_master_comment:
Fix obsolete comment
|
|
|
|
|
|
|
|
|
|
This patch fixes an issue where io:columns/0 times out when invoked from
any application callback (or any supervisor/supervised module since the
group leader is inherited).
To reproduce the issue, one must simply call io:columns() from any
application callback. You will notice the process will block for 2 seconds
which then times out and returns {:error, :enotsup}.
Note this bug only happens inside the erlang shell (using -noshell or
escripts do not trigger the bug).
To fix the bug, it is important to understand how io requests flow from
application callback processes. Here are the steps followed:
1. Since io:columns/1 is timing out, the first step is to find out who is the
group leader for the application callback process. Using process_info/1, we
can see the parent process is the application_master and handles
io_requests by delegating them to the group_leader.
2. By inspecting the application_master process, we can find the group_leader
the message is sent is the registered process named user. The process is
running the group module which does handle io:columns/1 requests delegating
them to user_drv process.
3. The user_drv process does handle tty_geometry requests, except that a
clause above ends up short-circuiting all tty_geometry requests from the
user process.
This patch moves the user clause below the specific driver messages.
OTP-12241
|
|
Added a put_chars_sync to the protocol that can be used to
talk to user_drv and made group use it. This is needed in order
to guarantee that bytes has been pushed to the tty port when
doing something like this:
io:format("halting\n"),erlang:halt(0).
Before this change the halting message could be lost in the message
queue of the user_drv process, this is no longer possible.
This commit also fixes ssh_cli as that plugs itself in as a user_drv
process.
OTP-12240
|
|
|
|
* maint:
ssh: Fixes clause syntax error in ssh.appup.src
|
|
|