christos
cfa16c6369
Fix memory leaks in error paths.
...
From Michael Cook mcook at bbn dot com
2009-07-22 15:57:40 +00:00
christos
83965485c1
Always initialize nread since it is an out param.
...
From Michael Cook mcook at bbn dot com
2009-07-22 15:57:00 +00:00
christos
17a17e3aeb
Move filename to the scope it is being used.
...
From Michael Cook mcook at bbn dot com
2009-07-22 15:56:29 +00:00
christos
cfb4e5f917
Simplify the code. No functional change.
2009-07-17 12:28:27 +00:00
christos
e2d0108bb8
- off by one in the term.h case.
...
- make code more similar to tcsh (if we want to handle wide chars, this is
needed; for now it is a no-op)
2009-07-17 12:27:57 +00:00
christos
59a88754a7
handle prompt_esc properly.
2009-07-17 12:26:26 +00:00
christos
537657ed45
Use the proper prompt printing function.
2009-07-17 12:25:52 +00:00
christos
8e714f4b6e
add stdio.h since we are using FILE. From Grant Erickson
2009-07-09 19:02:04 +00:00
perry
eb247ff739
note that the return value of el_gets doesn't remain valid across
...
calls.
2009-07-05 21:55:24 +00:00
christos
287bd18049
decrement the number of levels after the loop (Julien Torres)
2009-06-09 13:04:33 +00:00
christos
e55354196b
from Julien Torres, flip the order we pop in the macro array.
2009-06-08 15:10:53 +00:00
christos
189ce7898b
always scroll when we advance past bottom. From Caleb Welton
...
cwelton at greenplum dot com
2009-05-19 21:45:14 +00:00
wiz
35cf287cb8
Punctuation nit.
2009-05-12 08:14:07 +00:00
christos
b627b61f7f
restore binary compatibility by providing new prompt functions that take
...
an extra literal character.
2009-05-11 18:33:30 +00:00
christos
b203bfe74f
PR/41230: -current: sh(1) endlessly looping in interactive
...
Fix proposed from Matthew Mondor
2009-04-16 19:39:37 +00:00
wiz
55a1b57943
Drop trailing whitespace.
2009-04-11 22:17:52 +00:00
joerg
dab0ac3098
Don't use .Xo/.Xc to work around ancient macro argument limit in groff.
2009-04-11 20:53:15 +00:00
joerg
22ce33e2aa
Don't use .Xo/.Xc to avoid ancient macro argument limit.
2009-04-11 20:48:26 +00:00
christos
46db7d011d
Fix off by one error reported by: Caleb Welton cwelton at greenplum dot com
2009-04-08 21:31:31 +00:00
wiz
3a9e7e68ee
Readability improvement. Whitespace nits.
2009-04-01 08:58:47 +00:00
christos
097860c04e
cast to size_t to avoid sign / unsigned comparison warning.
2009-03-31 21:33:17 +00:00
christos
e6ec3d065c
implement RL_PROMPT_{START,END}_IGNORE
2009-03-31 17:53:03 +00:00
christos
c8754a5b44
Implement literal prompt sequences. Now someone can implement
...
RL_PROMPT_START_LITERAL/RL_PROMPT_END_LITERAL :-)
2009-03-31 17:38:27 +00:00
wiz
097d2fd1a6
-1 is not a defined value, it is just a value.
...
On the other hand, minuses need backslashes, otherwise they become hyphens.
2009-03-10 22:55:14 +00:00
christos
ae87843e53
make el_gets set the count to -1 on error to distinguish between EOF and
...
error.
2009-03-10 20:46:15 +00:00
joerg
997634fe14
Fix preamble to match order set out by mdoc(7). Discussed with wiz.
2009-03-09 19:24:26 +00:00
msaitoh
150e7551ec
fix mis-evaluating whether a char is digit or not.
2009-02-27 04:18:45 +00:00
christos
07e886c39c
remove VEOF test. the tty is in cooked mode when we are not editing and
...
the tty driver does the check for us.
2009-02-21 23:35:10 +00:00
christos
954af9bb67
more size_t stuff.
2009-02-21 23:31:56 +00:00
christos
41907725b6
use the VEOF character from the terminal, instead of hard-coding 4.
2009-02-21 23:31:29 +00:00
wiz
6c890a7983
Restore markup changes (probably accidentally) reverted in previous.
2009-02-21 07:58:58 +00:00
christos
c51877c3f4
back out all prompt changes. they are not needed.
2009-02-21 00:05:23 +00:00
cube
0931c75c7a
Order of evaluation of arguments is undefined, so call va_arg() in an
...
explicit order. Fixes a segfault with bc reported by Patrick Welche on
current-users.
2009-02-19 20:27:11 +00:00
christos
e8bbf84cd0
reset and redraw on sigcont. From Anon Ymous.
2009-02-19 15:20:22 +00:00
wiz
dfe59495b1
Fix wordo, use more markup.
2009-02-19 09:48:08 +00:00
christos
f072c3f1a4
bump version for prompt arg.
2009-02-19 01:18:24 +00:00
christos
963ecab70c
document extra argument.
2009-02-19 01:18:02 +00:00
christos
ec70918ed3
SA_RESTART for all signals but SIGINT. From Anon Ymous.
2009-02-18 15:04:40 +00:00
christos
62dbbc55bc
allow for a prompt argument.
2009-02-17 21:34:26 +00:00
christos
7939d24e16
fix sign compare issues.
2009-02-16 00:15:45 +00:00
christos
5c894153a3
pass lint on _LP64.
2009-02-15 21:55:23 +00:00
christos
d25b6758ed
in order for read() to return EINTR we need to use sigaction, not signal,
...
otherwise SA_RESTART is set.
2009-02-15 21:25:01 +00:00
christos
6ed9cd5e69
don't restart on EINTR, instead return NULL immediately. From Anon Ymous
2009-02-15 21:24:13 +00:00
sketch
fc16547f5e
More fixes for existing portability stuff.
2009-02-12 13:39:49 +00:00
sketch
2157800b5b
SUNOS is spelt __SunOS. Add missing prototypes.
2009-02-06 20:08:13 +00:00
sketch
957effbd58
Needs errno.h
2009-02-06 19:53:23 +00:00
sketch
fe96b18c3f
Plug memory leak, from MySQL.
2009-02-06 14:40:32 +00:00
sketch
5e72d51013
Portability fix.
2009-02-06 13:14:37 +00:00
sketch
fe3391bda5
de-__P()
2009-02-06 12:45:25 +00:00
christos
1dc5f9b89b
match documentation in el_push
2009-02-05 19:15:44 +00:00
christos
d052ee7b7f
add rl_set_prompt
2009-02-05 19:15:26 +00:00
apb
69a442fa50
Define HAVE_STRUCT_DIRENT_D_NAMLEN in config,h, and test it when
...
deciding whether to use entry->d_namlen or strlen(entry->d_name).
Addresses PR 40477 by Robert Millan.
2009-01-26 17:32:41 +00:00
lukem
c17aaf60c9
WARNS=4
2009-01-18 12:17:49 +00:00
lukem
a06595c27b
fix -Wsign-compare issues
2009-01-18 12:14:16 +00:00
christos
2d18fd40a7
- insert a space after the recognized string if it was an exact match
...
- initialize properly the string used for completion.
From Alex Bligh alex at alex dot org dot uk
- Make char constants consistent
2009-01-11 15:00:23 +00:00
christos
46edb91e9f
bump shared libraries.
2009-01-11 03:07:47 +00:00
aymeric
e56ab6501a
have '$' include the last character in the line when embedded in a command.
...
This fixes c$, d$, y$, and so on in vi mode.
2008-09-30 08:37:42 +00:00
christos
872a7369cc
Allow a single process to control multiple ttys (for pthreads using _REENTRANT)
...
using multiple EditLine objects. Mostly from Preston A. Elder.
2008-09-10 15:45:37 +00:00
christos
365dab42f3
handle EINTR in the termios operations, reported by the GHC folks
2008-07-30 13:00:46 +00:00
christos
df0a282e52
Don't bother with SIGSTOP it cannot be caught or ignored. From Jess Thrysoee
2008-07-12 15:27:14 +00:00
martin
11a6dbe728
Convert TNF licenses to new 2 clause variant
2008-04-30 13:10:46 +00:00
martin
3028e483e4
Convert to new 2 clause license
2008-04-29 06:53:00 +00:00
christos
4652e1fb8f
bump minor.
2008-04-05 23:53:26 +00:00
christos
0cb4d42e16
add EL_REFRESH for the benefit of readline
2008-04-05 15:53:28 +00:00
christos
3bbc95f39d
Add rl_forced_update_display() from Gerry Swislow
2008-04-04 21:18:34 +00:00
christos
5f3802ca6e
patches from Axel Thimm
2007-08-12 07:41:51 +00:00
christos
07186f02e2
Fix tab/space confusion; from Stefan Farfeleder
2007-06-10 20:20:28 +00:00
tls
4147a3c54a
Add new Makefile knob, USE_FORT, which extends USE_SSP by turning on the
...
FORTIFY_SOURCE feature of libssp, thus checking the size of arguments to
various string and memory copy and set functions (as well as a few system
calls and other miscellany) where known at function entry. RedHat has
evidently built all "core system packages" with this option for some time.
This option should be used at the top of Makefiles (or Makefile.inc where
this is used for subdirectories) but after any setting of LIB.
This is only useful for userland code, and cannot be used in libc or in
any code which includes the libc internals, because it overrides certain
libc functions with macros. Some effort has been made to make USE_FORT=yes
work correctly for a full-system build by having the bsd.sys.mk logic
disable the feature where it should not be used (libc, libssp iteself,
the kernel) but no attempt has been made to build the entire system with
USE_FORT and doing so will doubtless expose numerous bugs and misfeatures.
Adjust the system build so that all programs and libraries that are setuid,
directly handle network data (including serial comm data), perform
authentication, or appear likely to have (or have a history of having)
data-driven bugs (e.g. file(1)) are built with USE_FORT=yes by default,
with the exception of libc, which cannot use USE_FORT and thus uses
only USE_SSP by default. Tested on i386 with no ill results; USE_FORT=no
per-directory or in a system build will disable if desired.
2007-05-28 12:06:17 +00:00
christos
2d9dad6f00
Add rl_completion_matches, fix remove_history
2007-05-27 19:45:37 +00:00
christos
bd6c2075f1
Fix bug with multiple pending el_pushes. Reported by Julien Torres.
2007-03-01 21:41:45 +00:00
christos
754eed8af3
PR/35411: Matthew Wala: inconsistency in editline(3): rename "num" to the
...
appropriate parameter names.
2007-01-12 16:31:13 +00:00
wiz
77171fb3a0
Fix xref section. Whitespace cleanups..
2006-12-18 00:03:43 +00:00
christos
3a1928de28
add EL_GETFP, and EL_SETFP.
2006-12-15 22:13:33 +00:00
freza
37b5672028
s/el->errfile/el->el_errfile/g in debug code, fixes MKDEBUGLIB build.
2006-11-25 17:54:38 +00:00
christos
3bf701820f
bump minor.
2006-11-24 00:03:06 +00:00
christos
6b8a793080
- Add more readline functions, enough for gdb-6.5
...
- Make el_get varyadic, and implement EL_GETTC.
- XXX: the EL_SETTC api will change in the future.
2006-11-24 00:01:17 +00:00
christos
72301cb079
don't use alloca with ssp.
2006-11-09 16:58:38 +00:00
mrg
d257e1e9bd
__weakref__ attribute can not be applied to anything when inside function
...
scope, so, move the extern of get_alias_text outside vi_alias().
fixes build problems with GCC 4.1-20061021.
2006-10-22 07:48:13 +00:00
christos
d9590bcae9
Fix memory leak found by valgrind (Julien Torres)
2006-09-28 13:52:51 +00:00
rpaulo
1399def216
Rename TEST/test.c to avoid problems when doing a cleandir on case-insensitive
...
file systems.
ok'ed christos.
2006-08-31 20:20:38 +00:00
christos
f1fff5b02e
Change to a 3 clause copyright after permission of the holders.
2006-08-21 12:45:30 +00:00
christos
213f1e2476
PR/34062: Tanaka Akira: rl_deprep_term_function is NULL in libedit.
...
Default to rl_deprep_terminal as suggested; do the same for
rl_prep_term_function
2006-07-23 20:21:45 +00:00
christos
96473fa808
change __weak_extern to __weak_reference so that gcc4 works.
2006-05-18 17:54:19 +00:00
christos
5bba7270fa
fix debugging printf format.
2006-04-09 01:36:51 +00:00
rtr
596eb336c9
remove if/free block checking known condition
...
coverity 2762 / run 11
2006-03-25 13:00:11 +00:00
christos
9363fb8b44
move declaration to header file.
2006-03-23 20:22:51 +00:00
christos
4baec30349
Coverity CID 2743: Not really a memory leak, but make it obvious that we
...
always free tmp.
2006-03-21 17:52:50 +00:00
christos
ec39c1a649
Fix compilation.
2006-03-18 19:23:14 +00:00
christos
5900226fad
Lint comment.
2006-03-18 19:22:59 +00:00
christos
a46f31170d
Coverity CID 1668: Plug memory leak.
2006-03-18 09:31:36 +00:00
christos
c66ab9a1d0
Coverity CID 1666: Plug memory leak.
2006-03-18 09:28:23 +00:00
christos
c5f39d86c2
Coverity CID 1667: Plug memory leak
2006-03-18 09:19:02 +00:00
christos
53c1263c37
Coverity CID 1662: Memory leak.
2006-03-18 09:15:57 +00:00
christos
87113ce74b
Coverity CID 597: remove dead code.
2006-03-18 09:09:41 +00:00
christos
78f7dbe212
Coverity CID 1216: Prevent negative index use.
2006-03-18 09:07:05 +00:00
christos
62bb88223c
Coverity CID 806: Prevent NULL deref
2006-03-18 09:02:08 +00:00
christos
230c3d4ed6
Print the actual eofc, instead of ^D\b\b.
...
Change internal character decoding to prevent buffer oveflows.
2006-03-06 21:11:56 +00:00
christos
0fd1bd6295
use the tty chars for reprint and eof instead of hard-coded ^R and ^D
2006-03-06 21:11:03 +00:00
christos
10f8fe2052
PR/32817: Magnus Svensson: write_history and read_history returncode is not
...
readline compatible.
2006-02-13 14:12:04 +00:00
christos
fd2c82a86e
Partial rl_getc_function support from Jess Thrysoee.
2006-02-12 16:15:07 +00:00
christos
fff4889f5c
Refresh bug reported by Julien Torres:
...
going from:
activate -verbose
to:
reset -activation
results in:
reset -activationverbose"
instead of:
reset -activation
This is because we choose to insert "reset -" before the current line,
and the delete "e -" and insert "ion" in the appropriate place. The
cleareol code did not handle this case properly; we now cleareol to
the maximum number of characters of the first difference, the second
difference and the difference in line length.
2005-11-09 22:11:10 +00:00
christos
41a71d9929
change tr '[a-z]' '[A-Z]' to tr '[:lower:]' '[:upper:]' so that POSIX systems
...
work properly regardless of environment variable settings.
2005-10-22 16:45:03 +00:00
wiz
59a1fe13eb
Add el_get to SYNOPSIS. From jmc@openbsd.
2005-10-12 09:29:43 +00:00
wiz
416b7d49ec
Fix double if (from Alexey E. Suslikov via jmc@openbsd).
...
While here, re-word both H_[GS]ETUNIQUE descriptions so they make
more sense. Bump date.
2005-09-09 22:32:56 +00:00
christos
af079a3097
PR/31012: Barry Naujok: libedit el_get with EL_EDITOR op does not work
...
Fixed as suggested.
2005-08-19 04:21:47 +00:00
christos
55ca57f0a2
Don't save the el->el_line.cursor over a cv_insert call and use it later
...
because it might change. From Stefan Farfedeler.
2005-08-10 12:46:24 +00:00
christos
fda9b4f722
Don't delete the current line in vi mode when typing 'yy'.
...
From Stefan Farfeleder.
2005-08-09 16:40:12 +00:00
christos
b779ac8673
Fix two more help iterators. Thanks Stefan Farfeleder!
2005-08-09 13:58:44 +00:00
christos
2ecb0fb73d
Spelling mistakes and comment errors (from FreeBSD via Stefan Farfeleder; many
...
thanks)
2005-08-08 14:05:37 +00:00
christos
d8f117745d
Don't add an extra { NULL, 0, NULL } element to the help array. Instead keep
...
it always the same size as the function array for consistency. Reported in
FreeBSD PR 82381, but fixed differently.
2005-08-08 14:04:49 +00:00
christos
76b5907b5f
The previous commit removed too much and forgot to reset the history event
...
number. From Kouichirou Hiratsuka, many thanks!
2005-08-08 01:41:30 +00:00
christos
262f96a2f6
Fix reversed test; from Gerry Swislow
2005-08-03 13:41:38 +00:00
christos
68d7e34555
On a fatal error, we want to stop processing the macro buffers.
2005-08-02 12:11:14 +00:00
tron
4e72290930
Add missing second argument to another call of ch_reset().
2005-08-02 10:20:33 +00:00
christos
0895008a17
Don't reset the macro strings each time we enter el_gets(), otherwise
...
el_push() is unusable programmatically.
2005-08-01 23:00:15 +00:00
christos
ee399edc73
Don't forget to initialize h_del; from Julien Torres.
2005-08-01 14:34:06 +00:00
wiz
6220c813a6
Drop trailing whitespace.
2005-07-14 15:02:37 +00:00
christos
45542456a5
PR/30747: David N. Williams: libedit is missing remove_history()
...
Added, please test.
2005-07-14 15:00:58 +00:00
christos
32bff6afc2
Fix memory leaks found by valgrind. From Julien Torres
2005-07-06 21:13:02 +00:00
christos
54e7bf907a
make this useable from c++.
2005-06-12 06:58:21 +00:00
christos
19c38590ee
PR/30500: Paul Shupak: Inconsistent definition of tilde_expand().
...
Provide a layer of indirection between the readline compatibility functions
and our internal implementation, so that we have the freedom to change the
function signature.
2005-06-11 18:18:59 +00:00
christos
3cfbfdb2ef
Bug reported from Martin Dietze:
...
The place to change the completion_append_character is
usually somewhere in the `rl_completion_entry_function'
callback which is where one usually can distinguish between
file- or dir-like entries to append a slash for dirs etc.
This does no longer work since `fn_complete()' takes the
`append_character' as argument before the callback is executed,
so that changes to the variable `rl_completion_append_character'
have in fact no effect for the current completion.
Fix by adding a function that returns the rl_completion_append_character,
when it gets passed in a filename in readline emulation.
2005-06-10 20:21:00 +00:00
christos
0320b64715
tilde expand should take a const argument.
2005-06-10 20:18:11 +00:00
lukem
ac636bd17a
Don't use non-standard uint or u_int.
2005-06-01 11:37:52 +00:00
lukem
48753fbc85
Update for recent parse__escape() prototype change
2005-05-29 04:58:15 +00:00
christos
917b5f36b1
PR/25694: Luke Mewburn: Don't abuse unconstify'ing a string and writing to
...
it, because you'll core dump. Also remove extra const that gives pain to
the irix compiler.
2005-05-29 03:55:37 +00:00
lukem
beb8208a11
fix for WARNS=3
2005-05-28 12:03:22 +00:00
lukem
8e4107254f
clean up build of "test"
2005-05-28 12:02:53 +00:00
lukem
d0117e1043
MAKEVERBOSE support
2005-05-28 11:55:30 +00:00
agc
305f170238
Use the correct type for the stored callback function
2005-05-27 14:01:46 +00:00
agc
26abf58dee
Sync the alternative readline interface with reality:
...
+ the rl_callback_handler_install takes a pointer to a void function
which has one char * argument (it's called that way in the readline
emulation source, otherwise there's no way to pass the line buffer
to the function which processes the line when EOL is encountered)
+ provide a prototype for that function signature and use it
Makes the callback readline interface work now.
2005-05-27 11:35:07 +00:00
christos
eda876c9d5
Libedit depends on libterm. From Patrick Welche
2005-05-18 22:36:20 +00:00
christos
33b0562908
Make completion_matches non-static since readline wants it.
2005-05-18 22:34:41 +00:00
christos
308097fac3
Make signal handler safe. From Michael Knudsen, many thanks.
2005-05-18 00:50:24 +00:00
lukem
78745cde09
Remove clause 3 from the UCB license.
2005-05-16 13:14:43 +00:00
christos
182beb15f2
PR/30215: Kouichirou Hiratsuka: /bin/sh dumps core with tabcomplete
...
Don't core-dump when trying to complete an empty line; instead assume ./
2005-05-12 15:48:40 +00:00
dsl
2e685ade80
Use getpwuid_r(getuid(), ...) to expand ~/....
...
Don't replace ~xyz with /home/xyz when expanding ~
2005-05-09 20:10:33 +00:00
dsl
6ddc453ece
gdb directly calls filename_completion_function()
2005-05-07 16:28:32 +00:00
dsl
76a1f02b41
Make everything that uses makelist depend on Makefile - that way the
...
created files pick up new entries.
2005-05-07 16:22:59 +00:00
dsl
41a59814ed
Separate out the filename completion functions from the readline() code.
...
Pass in loads of parameters instead of relying on shed-loads of global
variables to modify the behaviour.
The filename completion code can now be enabled by code that uses el_gets().
(eg /bin/sh)
2005-05-07 16:01:25 +00:00
matt
35f4d7fe23
Terminate the arglist with a NULL instead of 0. (Shuts up gcc4.x)
2005-04-25 01:06:03 +00:00
christos
b9b92f846c
check for pwd != NULL, fix a missed getpwnam.
2005-04-19 03:29:18 +00:00
christos
a76abbed58
PR/29958: Peter Bex: add rl_variable_bind and rl_attempted_completion_over
2005-04-12 22:01:40 +00:00
christos
bf7832efc6
use getpwent_r
2005-04-02 06:28:10 +00:00
christos
35d638917d
PR/29738: Rui Paulo: Incorrect tok_line and tok_str declarations.
2005-03-19 17:36:02 +00:00
christos
476e930172
Add missing define, needed for debugging (from Rob Rodgers)
2005-03-15 00:10:40 +00:00
christos
af62817ea3
Always update the position variables before the map function is called.
...
From Rob Rodgers, thanks!
2005-03-10 19:34:46 +00:00
christos
f96c72ee24
set UNBUFFERED again after you do the line callback so that the new line
...
gets refreshed.
2005-03-09 23:55:35 +00:00
christos
04a4f22437
Make sure we flush after we prepare when we are unbuffered otherwise the
...
prompt will not appear immediately.
2005-03-09 23:55:02 +00:00
christos
3bca82ec33
PR/26785: Jess Thrysoee: libedit - H_NEXT and H_PREV shifts cursor on failure
2004-11-27 18:31:45 +00:00