aboutsummaryrefslogtreecommitdiff
path: root/editors
AgeCommit message (Collapse)Author
2006-02-24A few changes falling out from the effort to make sed handle embedded NUL bytes.Rob Landley
Checking in to reduce the diff between my tree and svn...
2006-02-21Don't build directory libraries unless we're building an applet that needs it.Rob Landley
Cherry-picked from Devin Bayer's big MacOS X patch.
2006-02-14Patch from awk maintainer (Dmitry Zakhrov) to fix bugs 642, 663, and 667.Rob Landley
2006-02-02make the build system puuuuuuuuuuurtyMike Frysinger
2006-01-31changed strange mix signed<->unsigned"Vladimir N. Oleynik"
2006-01-30fix up yet more annoying signed/unsigned and mixed type errorsEric Andersen
2006-01-30clean up yet more annoying signed/unsigned mismatches and fixupEric Andersen
yet more incorrect types
2006-01-30removed warning "comparison between signed and unsigned". Added ↵"Vladimir N. Oleynik"
ATTRIBUTE_UNUSED. Whitespace
2006-01-25just whitespaceTim Riker
2006-01-22- add platform.h.Bernhard Reutner-Fischer
- use shorter boilerplate while at it.
2006-01-15- shared libbusybox.Bernhard Reutner-Fischer
- IMA compilation option (aka IPO, IPA,..) Please holler if i broke something..
2006-01-09Bug 112, return value of awk should be /256. In reality, we should probablyRob Landley
be using WEXITSTATUS(), but until I can figure out why the heck that would want to do (*(int *) &(status)) on the value, I'm happy just fixing the bug we actually see.
2005-11-28fix bug #474:Paul Fox
0000474: vi crashes often problem was that the buffer used for "." command ("last_modifying_cmd") wasn't being maintined correctly -- the recording code was walking back over the front of that buffer when a repeatable insert command included backspacing (e.g. "i\b\b\bfoo"). the fix is to simply record the backspaces along with the rest of the command. also, cleaned up start_new_cmd_q() slightly.
2005-11-20Support # comments after s/// option list.Rob Landley
2005-10-30\0 is a synonym for &. Our own "make allbaseconfig" breaks without this.Rob Landley
2005-10-27- correct boilerplateBernhard Reutner-Fischer
- use bb_xgetlarg for the patch_level to catch invalid arguments.
2005-10-19more const, attribute_noreturn saved 200 bytes"Vladimir N. Oleynik"
2005-10-17- consume space between functionname and opening bracketsBernhard Reutner-Fischer
Fixes Rob's issue using busybox awk for building gcc-4_0 optionlist (http://busybox.net/lists/busybox/2005-October/016659.html)
2005-10-15common BUFSIZ BSS buffer, small reduce code, data and bss"Vladimir N. Oleynik"
2005-10-10- do not use bb_xgetularg10_bnd as a lower value of -1 doesn't work due to loweBernhard Reutner-Fischer
being unsigned. - minor correction: use stdin only when no file was given via -i. - use shorter boilerplate.
2005-10-09catch and report errors from file_write()Paul Fox
2005-10-09make Hit_Return() available when CONFIG_FEATURE_VI_COLON is off. it'sPaul Fox
needed elsewhere as well now.
2005-10-06change strange depend to libbb.h, but require busybox.h"Vladimir N. Oleynik"
2005-09-27as pointed out in Bug 17, use uint32_t instead of unsigned long since the ↵Mike Frysinger
code expects the size of the info variables to be 32bits and sizeof(long) on 64bit hosts is not 32bits
2005-09-27eat misappropriated whitespaceMike Frysinger
2005-09-27uncuddle function scope bracketsMike Frysinger
2005-09-24use the shorter license headerMike Frysinger
2005-09-24use brief license lineMike Frysinger
2005-09-16initialize a couple of vars whose warnings were suppressed becausePaul Fox
i was building w/ debug on before, which suppresses optimization.
2005-09-16some combinations of status line and screen refresh don't give aPaul Fox
correct screen, and bug 215 reports trouble with the status line on small screens. with this change a) the status line should always be refreshed properly, b) the status line is a little shorter than it used to be ("I" instead of "--INSERT--"), c) the status line will be truncated if it doesn't fit on the screen, and d) if the screen is too narrow for an error or transient status message (from psb() or psbs()), then that message will be followed by a "Hit Return" prompt. (it wasn't until i did this last bit that the size grew. with this, these changes add about 150 bytes.) - pgf
2005-09-14split libbb: moved xregcomp separatelly for speed up recompile"Vladimir N. Oleynik"
2005-09-14removed strange extern void xregcomp(... from some applets, but declared ↵"Vladimir N. Oleynik"
from libbb.h
2005-09-13allow either backspace or DEL, in addition to the user's erasePaul Fox
char, to be used in get_input_line()
2005-09-02Missing break was screwing up 'y//' command. Bug #248.Rob Landley
2005-09-01Patch -i support from Berhnard Fischer.Rob Landley
2005-07-27use toplevel ARFLAGS and update default ARFLAGS to be quietMike Frysinger
2005-07-20applying fix for:Paul Fox
0000118: vi join command does not mark file as modified for certain lines.
2005-07-18allow both ^H and DEL to backspace in insert mode (bug #23)Paul Fox
2005-07-18Fix vi so that error messages, insert mode messages, etc areEric Andersen
all actually displayed in the status line as expected
2005-06-07Patch from Dmitry Zakharov:Rob Landley
Charlie Brady wrote: > Here's another awk parsing problem - unary post increment - pre is fine: > >bash-2.05a$ echo 2,3 | gawk -F , '{ $2++ }' >bash-2.05a$ echo 2,3 | /tmp/busybox/busybox awk -F , '{ $2++ }' >awk: cmd. line:1: Unexpected token > Here's a fix for this. There is another problem with constructions like "print (A+B) ++C", I don't know whether somebody uses such constructions (fixing both these problems would require very serious change in awk code).
2005-05-18Patch from Colin Watson (mangled slightly by Rob Landley):Rob Landley
This patch implements the 'T' command in sed. This is a GNU extension, but one of the udev hotplug scripts uses it, so I need it in busybox anyway. Includes a test; 'svn add testsuite/sed/sed-branch-conditional-inverted' after applying.
2005-05-18Doug Swarin pointed out a security bug in the -i option of sed.Rob Landley
While the permissions on the temp file are correct to prevent it from being maliciously mangled by passing strangers, (created with 600, opened O_EXCL, etc), the permissions on the _directory_ might not be, and we re-open the file to convert the filehandle to a FILE * (and automatically get an error message and exit if the directory's read-only or out of space or some such). This opens a potential race condition if somebody's using dnotify on the directory, deletes/renames the tempfile, and drops a symlink or something there. Somebody running sed -i as root in a world writeable directory could do damage. I dug up notes on an earlier discussion where we looked at the security implications of this (unfortunately on the #uclibc channel rather than email; I don't have a transcript, just notes-to-self) which pointed out that if the permissions on the directory allow other people's files to be deleted/renamed then the original file is vulnerable to sabotage anyway. However, there are two cases that discussion apparently didn't take into account: 1) Using another user's permissions to damage files in other directories you can't access (standard symlink attack). 2) Reading data another user couldn't otherwise access by having the new file belong to that other user. This patch uses fdopen to convert the filehandle into a FILE *, rather than reopening the file.
2005-04-16Patch from Bernhard Fischer to make a bunch of symbols staticEric Andersen
which were otherwise cluttering the global namespace.
2005-04-16In Bug 208, bernhardf writes:Mike Frysinger
On machines with only ANSI compliant compilers, not explitily delcaring an empty parameter list 'void' causes failure.
2004-11-25Hiroshi found another bug. Currently sed's $ triggers at end of every file,Rob Landley
and with multiple files SuSv3 says it should only trigger at the end of the LAST file. The trivial fix I tried first broke if the last file is empty. Fixing this properly required restructuring things to create a file list (actually a FILE * list), and then processing it all in one go. (There's probably a smaller way to do this, merging with append_list perhaps. But let's get the behavior correct first.) Note that editing files in place (-i) needs the _old_ behavior, with $ triggering at the end of each file. Here's a test of all the things this patch fixed. gnu and busybox seds produce the same results with this patch, and different without it. echo -n -e "1one\n1two\n1three" > ../test1 echo -n > ../test2 echo -e "3one\n3two\n3three" > ../test3 sed -n "$ p" ../test1 ../test2 ../test3 sed -n "$ p" ../test1 ../test2 sed -i -n "$ p" ../test1 ../test2 ../test3
2004-10-30Hiroshi Ito found some bugs. The 'c' command (cut and paste) was hardwiredRob Landley
to not put a newline at the end (which was backwards, it should have been hardwired _to_ put a newline at the end, whether or not the input line ended with a newline). Test case for that: echo | sed -e '$ctest' And then this would segfault: echo | sed -e 'g' Because pattern_space got freed but the dead pointer was only overwritten in an if statement that didn't trigger if the hold space was empty. Oops. While debugging it, I found out that the hold space is persistent between multiple input files, so I promoted it to a global and added it to the memory cleanup. The relevant test case (to compare with That Other Sed) is: echo -n woo > woo sed -e h -e g woo echo "fish" | sed -e '/woo/h' -e "izap" -e 's/woo/thingy/' -e '/fish/g' woo - And somebody gratuitously stuck in a c99 int8_t type for something that's just a flag, so I grouped the darn ints.
2004-10-08egor duda writes:Eric Andersen
Hi! I've created a patch to busybox' build system to allow building it in separate tree in a manner similar to kbuild from kernel version 2.6. That is, one runs command like 'make O=/build/some/where/for/specific/target/and/options' and everything is built in this exact directory, provided that it exists. I understand that applyingc such invasive changes during 'release candidates' stage of development is at best unwise. So, i'm currently asking for comments about this patch, starting from whether such thing is needed at all to whether it coded properly. 'make check' should work now, and one make creates Makefile in build directory, so one can run 'make' in build directory after that. One possible caveat is that if we build in some directory other than source one, the source directory should be 'distclean'ed first. egor
2004-09-24Patch from Dmitry Zakharov to fix a bug triggered by freeswan's scripts.Glenn L McGrath
2004-08-19regularly update the status line displayEric Andersen
-Erik
2004-07-30Simon Poole reports that awk segfaults when environment variablesEric Andersen
with no value exist, i.e. $ export BOB='' % ./busybox awk Segmentation fault This patch teaches awk to not blow chunks on empty env variables. -Erik