summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'nox/match-context-return' into pupuFredrik Gustafsson2013-08-014-2/+23
|\
| * Added primary bootstrapFredrik Gustafsson2013-08-011-0/+0
| |
| * Forbid returning a match context in beam_validatorAnthony Ramine2013-08-013-2/+23
| | | | | | | | | | If a match context is returned from a function without being converted back to a plain old binary, the whole VM will crash.
* | Merge branch 'epa/add_fd_usage_in_rb' into puFredrik Gustafsson2013-08-013-26/+96
|\ \
| * | kernel: sasl: fixed rb.xml docsFredrik Gustafsson2013-08-011-1/+0
| | |
| * | Add Fd usage in rb loggingcrownedgrouse2013-07-133-26/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | rb was only accepting physical filenames as log file. This patch allow rb to accept now any io_device, valid registered name, except standard_error which is replaced by standard_io. Creation of two new exported functions : rb:log_list/0-1 that print in log file if existing, otherwise on standard_io. Add new functions documentation and tests in rb_SUITE.
* | | Merge branch 'sg/odbcserver_crash_fix' into puFredrik Gustafsson2013-08-011-0/+12
|\ \ \
| * | | Added a few input checks which prevent odbcserver crash if it's executedSergei Golovan2013-06-271-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | and supplied incorrect data to stdin. A crash example: echo -en "\x0\x0\x0\x1\x0" | ./odbcserver
* | | | Merge branch 'hm/reltool_script' into puFredrik Gustafsson2013-08-0116-268/+1074
|\ \ \ \
| * | | | Publish reltool scriptHåkan Mattsson2013-06-2616-268/+1074
| |/ / / | | | | | | | | | | | | The script makes it simpler to use reltool from command line (and makefiles).
* | | | Merge branch 'jw/fix-httpd-erl-script-nocache' into puFredrik Gustafsson2013-08-013-5/+5
|\ \ \ \
| * | | | Fix httpd config option 'erl_script_nocache'Johannes Weißl2013-06-223-5/+5
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes the usage of the httpd configuration option 'erl_script_nocache', which got ignored before. Attention: Before, the option 'script_nocache' also changed the behavior for mod_esi, now it only affects mod_cgi.
* | | | Merge branch 'lpg/openssh_zlib' into puFredrik Gustafsson2013-08-013-7/+37
|\ \ \ \
| * | | | Add openssh_zlib compression type to ssh_transportLouis-Philippe Gauthier2013-06-203-7/+37
| | | | | | | | | | | | | | | | | | | | http://www.openssh.org/txt/draft-miller-secsh-compression-delayed-00.txt
* | | | | Merge branch 'mh/line-initial-commas' into puFredrik Gustafsson2013-08-013-0/+65
|\ \ \ \ \
| * | | | | Inside parentheses, line-initial commas align with the open parenthesisMagnus Henoch2013-06-183-0/+65
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For example: [ one , two , three ] This does not affect coding styles that don't put commas at the beginning of lines.
* | | | | Merge branch 'ali/fix-inet-typespec' into puFredrik Gustafsson2013-08-011-2/+13
|\ \ \ \ \
| * | | | | Fix the typespec for the inet:ifget/2 and inet:ifget/3 return valueAli Sabil2013-06-191-2/+13
| |/ / / /
* | | | | Merge branch 'nox/fix-erl_lint-variable-usage' into puFredrik Gustafsson2013-08-012-22/+75
|\ \ \ \ \
| * | | | | Fix variable usage tracking in some record errorsAnthony Ramine2013-07-312-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When reporting a field redefinition in a record, erl_lint can forget about some old unused variables.
| * | | | | Fix unsafe variable tracking in try expressionsAnthony Ramine2013-07-222-2/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Variables used in the body of a try expression were marked as unsafe *and* used, which makes no sense as an unsafe variable can't be used. Function vtsubtract/2 is used to forget usage of such unsafe variables. Reported-by: Paul Davis
| * | | | | Fix variable usage tracking in erl_lintAnthony Ramine2013-07-012-20/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When analyzing complex expressions (i.e. comprehensions, cases, tries, ifs and receives), erl_lint does not forget about old unused variables when returning the updated variable table. This causes a bug where old unused variables are not recorded as such: t(X, Y) -> #r{a=[ K || K <- Y ],b=[ K || K <- Y ]}. As erl_lint uses vtmerge_pat/2 to merge the results of the analysis of the two list comprehensions, X is marked as used and the warning is not emitted. The function vtmerge_pat/2 is used instead of the similar vtmerge/2 which does not mark multiple occurrences of a variable as usage to handle cases like the following one: t(X, Y) -> #r{a=A=X,b=A=Y}. Other simpler expressions like conses, tuples and external fun references do not correctly follow this behaviour, e.g. A is not marked as used in the following code: t(X, Y) -> {A=X,A=Y}. This commit fixes both issues and makes erl_lint not return old unused variables in updated tables and makes all compound expressions use vtmerge_pat/2. Reported-by: Anders Ramsell
* | | | | | Merge branch 'epa/fix_io_noreturn_with_self_pid' into puFredrik Gustafsson2013-08-011-0/+2
|\ \ \ \ \ \
| * | | | | | Fix no return of io functions when self() used as Iodevicecrownedgrouse2013-06-031-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When self() is used as Iodevice in io functions, this was resulting in an infinite wait of function return. This patch add a guard in request and replace self() by the current group_leader.
* | | | | | | Merge branch 'feat/erl_tidy_print_to_stdout' into puFredrik Gustafsson2013-08-011-3/+20
|\ \ \ \ \ \ \
| * | | | | | | Added documenation for the new option describing what it does.Aaron2013-06-021-0/+7
| | | | | | | |
| * | | | | | | Changed function call for print_moduleAaron2013-06-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changed the function call for print module to the one which matches the actual function is.
| * | | | | | | Added an initial implementation of having erl_tidy print to screen instead ↵Aaron2013-06-021-3/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of writing to the file provided. The reason for this is that you may want to have an intermediary step between saving the tidied file and using the output. Use-case personally is wanting to integrate erl_tidy into emacs and tidy buffers, overwriting the current file is generally not how this works in emacs with source code tidiers.
* | | | | | | | Merge branch 'nox/igor-funs' into puFredrik Gustafsson2013-08-013-29/+25
|\ \ \ \ \ \ \ \
| * | | | | | | | Remove a useless function clause in erl_syntax_libAnthony Ramine2013-05-191-2/+0
| | | | | | | | |
| * | | | | | | | Fix transformation of implicit funs in igorAnthony Ramine2013-05-181-14/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Function erl_syntax_lib:analyze_implicit_fun/1 should not be called on implicit external funs, as their parts can contain variables instead of atoms and integers.
| * | | | | | | | Fix reverting of implicit funsAnthony Ramine2013-05-181-13/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implicit funs parts in plain AST are no longer in concrete form since Erlang/OTP R15.
* | | | | | | | | Merge branch 'yi/fix_eunit_io_protocol' into puFredrik Gustafsson2013-08-011-3/+3
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | Fix I/O-protocol error handling in eunitYuki Ito2013-05-101-3/+3
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ex_unit:io_request reuturns wrong value when it receive getopts or get_geometry request
* | | | | | | | | Merge branch 'sze/limit_max_length_int_shell' into puFredrik Gustafsson2013-08-014-13/+101
|\ \ \ \ \ \ \ \ \
| * | | | | | | | | Limit maximum line length in interactive shellsStefan Zegenhagen2013-05-084-13/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Dear all, it seems as if I sent around the wrong version of the patch. Please find the correct version attached to this e-mail. Kind regards, > one of our testers found out that he could reliably reboot our > erlang-based device by just sending tons of 'A' characters to an > interactive shell. > > It appears that the I/O server of the interactive shell (in group.erl) > is always reading a full line before doing any end-of-input processing, > so that by sending bytes without a newline in between, it slowly eats up > all available memory. > > The patch attached to this e-mail fixes that by introducing a new > io:setopt() option in group.erl named 'max_length' that is used to check > whether the current line length exceeds this maximum whenever the line > is edited. If an overlong line is detected, max_length bytes are > returned immediately (without the actual stop condition being fulfilled, > though, allowing I/O clients to detect this situation). > > max_length is allowed to be an integer() > 0 or 'unlimited'. The default > is 'unlimited' to have the old behaviour by default. > > > > Kind regards, > > _______________________________________________ > erlang-patches mailing list > erlang-patches@erlang.org > http://erlang.org/mailman/listinfo/erlang-patches -- Dr. Stefan Zegenhagen arcutronix GmbH Garbsener Landstr. 10 30419 Hannover Germany Tel: +49 511 277-2734 Fax: +49 511 277-2709 Email: stefan.zegenhagen@arcutronix.com 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 b8b904f4ca1e0b418f8e758c9aa5e43b6469c3b4 Mon Sep 17 00:00:00 2001 From: Stefan Zegenhagen <stefan.zegenhagen@arcutronix.com> Date: Tue, 7 May 2013 14:14:50 +0200 Subject: [PATCH] limit line length in interactive shells Since the I/O server in group.erl was always collecting full lines before doing any further end-of-input processing, it was possible to crash any erlang system by just sending tons of characters without any newline to an interactive shell. Fix that by allowing to specify a maximum input length. Whenever new characters are received from the input device, check whether the new input exceeds the maximum line length and if so, return the data that was read so far (up to the maximum line length characters).
* | | | | | | | | | Merge branch 'sze/edlin_understand_keys' into puFredrik Gustafsson2013-08-012-0/+30
|\ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | Added primary bootstrapFredrik Gustafsson2013-05-061-0/+0
| | | | | | | | | | |
| * | | | | | | | | | make edlin understand a few important control keysStefan Zegenhagen2013-05-061-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Dear all, the patch attached to this e-mail teaches edlin.erl a few more important control keys that many users might have become *VERY* accustomed to. The control keys are: - <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 With this patch in place, command line editing in erlang's own shell as well as in any input using io:get_line() comes a little closer to that in many contemporary shells. Kind regards, -- Dr. Stefan Zegenhagen arcutronix GmbH Garbsener Landstr. 10 30419 Hannover Germany Tel: +49 511 277-2734 Fax: +49 511 277-2709 Email: stefan.zegenhagen@arcutronix.com 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 39f497adec90fc397f366da275fd5a7ca748cc5f Mon Sep 17 00:00:00 2001 From: Stefan Zegenhagen <stefan.zegenhagen@arcutronix.com> 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).
* | | | | | | | | | | Merge branch 'ao/fix_mnesia_block_table_exception' into puFredrik Gustafsson2013-08-011-3/+7
|\ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | Fix crash in mnesia_controller due to a function_clause exception from ↵Ahmed Omar2013-05-021-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | is_tab_blocked/1 If mnesia_controller:block_table/1 is called twice for same table, the new stored value of {Tab, where_to_commit} will be {blocked, {blocked,List}}. This will result in an exception when calling is_tab_blocked/1. mnesia_conttoller:block_table/1 should check if the table is already blocked.
* | | | | | | | | | | | Merge branch 'dg/win_icon' into puFredrik Gustafsson2013-08-011-0/+0
|\ \ \ \ \ \ \ \ \ \ \ \
| * | | | | | | | | | | | add hires images to windows application iconDaniel Goertzen2012-09-071-0/+0
| | | | | | | | | | | | |
* | | | | | | | | | | | | Merge branch 'anders/diameter/UTF8String_encode/OTP-11172' into maintAnders Svensson2013-07-313-128/+111
|\ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * anders/diameter/UTF8String_encode/OTP-11172: Simplify Address encode/decode Use module unicode for UTF8String encode/decode Fix UTF8String encode
| * | | | | | | | | | | | | Simplify Address encode/decodeAnders Svensson2013-07-302-43/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By using binary comprehensions. Add string-valued addresses to codec suite.
| * | | | | | | | | | | | | Use module unicode for UTF8String encode/decodeAnders Svensson2013-07-301-25/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The original code predates that module but there's no reason not to use it now.
| * | | | | | | | | | | | | Fix UTF8String encodeAnders Svensson2013-07-303-69/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To accept any nested list of codepoints and binaries. A list containing a binary was previously misinterpreted and the documentation was incomplete. Also, rework codec suite slightly to be able to specify values for which decode o encode is the identity map, for which encode should succeed, and for which encode should fail.
* | | | | | | | | | | | | | Merge branch 'weisslj/fix-inets-doc-errors/OTP-11210' into maintFredrik Gustafsson2013-07-305-19/+19
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * weisslj/fix-inets-doc-errors/OTP-11210: Fix some errors in the inets documentation
| * | | | | | | | | | | | | | Fix some errors in the inets documentationJohannes Weißl2013-07-245-19/+19
| | | | | | | | | | | | | | |
* | | | | | | | | | | | | | | Merge branch 'nox/eunit-macros-blocks' into maintFredrik Gustafsson2013-07-301-20/+44
|\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * nox/eunit-macros-blocks: Wrap eunit macros into begin ... end blocks