aboutsummaryrefslogtreecommitdiff
path: root/editors/patch.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* patch: improved handling of files with no final newlineRon Yorston2026-04-161-9/+31
| | | | | | | | | | | | | Commit 2275a53f0 (patch: handle files with no final newline) was incomplete. It only detected a line with no newline in the first section of a hunk. Add the code necessary to detect the '\ No newline at end of file' warning in the second section. Also add some tests. Adds 48-80 bytes. (GitHub issue #575)
* patch: handle files with no final newlineRon Yorston2026-04-141-0/+18
| | | | | | | | | | | | The 'patch' applet was unable to process diffs which included the '\ No newline at end of file' warning. Detect this case and mark the lines affected so they can be emitted without a newline. Adds 45-69 bytes. (GitHub issue #575)
* Update applet size estimatesDenys Vlasenko2023-07-101-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: style fixDenys Vlasenko2022-08-301-8/+8
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: shrink lineedit_read_key()Denys Vlasenko2022-01-181-1/+1
| | | | | | | function old new delta lineedit_read_key 237 231 -6 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* help text: replace [OPTIONS] with actual options (if not too long)Denys Vlasenko2020-12-131-1/+1
| | | | | | | function old new delta packed_usage 33620 33665 +45 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* randomconfig fixesDenys Vlasenko2020-06-231-1/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* config: update size informationDenys Vlasenko2018-12-281-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: implement --dry-runDenys Vlasenko2018-04-141-43/+86
| | | | | | | | | | | | | function old new delta static.patch_longopts - 137 +137 patch_main 2053 2135 +82 fail_hunk 132 139 +7 finish_oldfile 119 124 +5 packed_usage 32807 32787 -20 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 3/1 up/down: 231/-20) Total: 211 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* regularize format of source file headers, no code changesDenys Vlasenko2017-09-181-1/+0
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* config: deindent all help textsDenys Vlasenko2017-07-211-1/+1
| | | | | | Those two spaces after tab have no effect, and always a nuisance when editing. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Update menuconfig items with approximate applet sizesDenys Vlasenko2017-07-181-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Code style fixes, no code changesDenys Vlasenko2016-11-281-5/+6
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: fix matching failureAaro Koskinen2016-11-241-0/+11
| | | | | | | | | | | | Fix matching failure when plist is advanced while checking for buffered lines - the lines in the hunk that are about to be added should be skipped when checking for matching context. Also add a valid test case that fails with current busybox and is fixed by the change. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: fix debug log failureAaro Koskinen2016-11-241-1/+1
| | | | | | | | If we reach the end of plist it means the input has still data while we are expecting EOF. Fix the log to avoid a crash. Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: correctly handle "patch FILE_TO_PATCH" form. Closes 7736Denys Vlasenko2016-01-231-6/+5
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: introduce and use is_prefixed_with()Denys Vlasenko2015-03-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | function old new delta is_prefixed_with - 18 +18 complete_username 78 77 -1 man_main 737 735 -2 fsck_device 429 427 -2 unpack_ar_archive 80 76 -4 strip_unsafe_prefix 105 101 -4 singlemount 1054 1050 -4 rtc_adjtime_is_utc 90 86 -4 resolve_mount_spec 88 84 -4 parse_one_line 1029 1025 -4 parse_conf 1460 1456 -4 may_wakeup 83 79 -4 loadkmap_main 219 215 -4 get_irqs_from_stat 103 99 -4 get_header_cpio 913 909 -4 findfs_main 79 75 -4 fbsplash_main 1230 1226 -4 load_crontab 776 771 -5 expand_vars_to_list 1151 1146 -5 date_main 881 876 -5 skip_dev_pfx 30 24 -6 make_device 2199 2193 -6 complete_cmd_dir_file 773 767 -6 run_applet_and_exit 715 708 -7 uudecode_main 321 313 -8 pwdx_main 197 189 -8 execute 568 560 -8 i2cdetect_main 1186 1176 -10 procps_scan 1242 1230 -12 procps_read_smaps 1017 1005 -12 process_module 746 734 -12 patch_main 1903 1891 -12 nfsmount 3572 3560 -12 stack_machine 126 112 -14 process_timer_stats 449 435 -14 match_fstype 111 97 -14 do_ipaddr 1344 1330 -14 open_list_and_close 359 343 -16 get_header_tar 1795 1779 -16 prepend_new_eth_table 340 323 -17 fsck_main 1811 1794 -17 find_iface_state 56 38 -18 dnsd_main 1321 1303 -18 base_device 179 158 -21 find_keyword 104 82 -22 handle_incoming_and_exit 2785 2762 -23 parse_and_put_prompt 774 746 -28 modinfo 347 317 -30 find_action 204 171 -33 update_passwd 1470 1436 -34 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/49 up/down: 18/-540) Total: -522 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: segfault fix. Closes 7916Denys Vlasenko2015-03-111-0/+10
| | | | | | | | | | | | | | | | | | | | | Fix segfault on this case (malformed --- line): -- dwarves.orig 2015-02-25 01:45:27.753000000 +0000 +++ dwarves 2015-02-25 01:46:08.199000000 +0000 @@ -1,7 +1,7 @@ Bashful Doc Dopey -Grouchy +Grumpy Happy Sleepy Sneezy function old new delta patch_main 1903 1957 +54 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: make -p count path components, not slashes (think /blah//thing)Rob Landley2011-10-101-8/+10
| | | | | Signed-off-by: Rob Landley <rob@landley.net> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: make it able to create files (again)Rob Landley2011-08-221-5/+3
| | | | | | | | I broke patch's ability to create files in November, and nobody noticed in the ensuing 11 months. Sigh. Signed-off-by: Rob Landley <rob@landley.net> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* diff: disable debug code; remove unsupported --dry-run from help textDenys Vlasenko2011-06-191-7/+10
| | | | | | | | | | | function old new delta packed_usage 28623 28602 -21 do_line 121 91 -30 patch_main 2086 1923 -163 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-214) Total: -214 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: nonblock_safe_read->nonblock_immune_read, remove unused param of ↵Denys Vlasenko2011-05-081-1/+1
| | | | | | xmalloc_reads Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* mass removal of underscores from _BB_DIR_foo and _BB_SUID_fooDenys Vlasenko2011-01-181-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: fix "patch at the beginning" testcase failureRob Landley2010-11-291-9/+14
| | | | | Signed-off-by: Rob Landley <rob@landley.net> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: simplify double list helpersDenys Vlasenko2010-11-211-42/+32
| | | | | | | | | | | | | | function old new delta dlist_free - 29 +29 fail_hunk 130 132 +2 patch_main 1987 1982 -5 dlist_add 59 54 -5 TOY_llist_pop 9 - -9 TOY_llist_free 54 - -54 ------------------------------------------------------------------------------ (add/remove: 1/2 grow/shrink: 1/2 up/down: 31/-73) Total: -42 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: busyboxify by migrating from toybox to busybox helpersDenys Vlasenko2010-11-211-160/+85
| | | | | | | | | | | | | | function old new delta get_line 90 128 +38 bbconfig_config_bz2 4959 4965 +6 makedevs_main 1038 1035 -3 fail_hunk 133 130 -3 finish_oldfile 174 124 -50 patch_main 2066 1987 -79 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/4 up/down: 44/-135) Total: -91 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: introduce and use xmkstemp. -65 bytes.Alexander Shishkin2010-10-221-2/+1
| | | | | Signed-off-by: Alexander Shishkin <virtuoso@slind.org> Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* patch: implement -E optionLukas Huba2010-10-211-9/+16
| | | | | Signed-off-by: Lukas Huba <Huba.Lukas@centrum.cz> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* revert last change (wrong author)Denys Vlasenko2010-10-211-16/+9
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: implement -E optionGilles Espinasse2010-10-211-9/+16
| | | | | Signed-off-by: Gilles Espinasse <g.esp@free.fr> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: replace xopen3 with xopen where makes senseDenys Vlasenko2010-10-181-1/+1
| | | | | | | | | | function old new delta uniq_main 421 416 -5 sort_main 803 798 -5 patch_main 2051 2046 -5 cpio_main 547 542 -5 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: whitespace fixesDenys Vlasenko2010-10-051-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: tweaksRob Landley2010-10-041-4/+6
| | | | | | | | | | | | 1) Eliminate spurious warnings about possibly reduced hunks. Instead only note a possible location if we don't find a non-reversed place to apply it. (Otherwise, hunks that move code forward around within a file look reversed at the removal site.) 2) Open the source file read-only, so we can apply patches to read-only files. Signed-off-by: Rob Landley <rob@landley.net> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: support "patch [FILE [PATCH]]" formatDenys Vlasenko2010-08-221-11/+24
| | | | | | | | function old new delta xopen_stdin - 15 +15 patch_main 2075 2041 -34 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: fix -N regressionDenys Vlasenko2010-08-171-5/+11
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: add -N and a test for it (fails for now)Denys Vlasenko2010-08-161-2/+4
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: move closer to toybox codeDenys Vlasenko2010-08-131-4/+7
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: deal with ommitted ",len" in hunk headers (default len to 1)Rob Landley2010-08-131-7/+13
| | | | | Signed-off-by: Rob Landley <rob@landley.net> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: replace it with toybox's implementationRob Landley2010-08-131-270/+555
| | | | | Signed-off-by: Rob Landley <rob@landley.net> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: accept and ignore -g NUMDenys Vlasenko2010-01-221-6/+7
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: add more long opts; but remove -g for nowDenys Vlasenko2010-01-221-8/+25
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: small code shrinks and compile fix for unicodeDenys Vlasenko2010-01-201-2/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: ignore flag -g. +22 bytesMatheus Izvekov2010-01-201-1/+3
| | | | | Signed-off-by: Matheus Izvekov <mizvekov@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: add longopts, --dry-run, add one more testDenys Vlasenko2009-10-241-6/+29
| | | | | | | | | | | function old new delta patch_main 1110 1214 +104 static.patch_longopts - 47 +47 packed_usage 26738 26761 +23 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 2/0 up/down: 174/0) Total: 174 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* patch: support -N. By Olivier Duclos (olivier.duclos AT gmail.com)Denys Vlasenko2009-08-201-1/+11
| | | | | | | | function old new delta packed_usage 26646 26656 +10 patch_main 1101 1110 +9 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: [x]fopen_for_{read,write} introduced and used.Denis Vlasenko2008-07-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (by Valdimir) function old new delta config_open2 - 41 +41 config_read 507 542 +35 find_pair 169 187 +18 fopen_for_write - 14 +14 fopen_for_read - 14 +14 find_main 406 418 +12 xfopen_for_write - 10 +10 xfopen_for_read - 10 +10 popstring 134 140 +6 parse_inittab 396 401 +5 next_token 923 928 +5 pack_gzip 1659 1661 +2 bb__parsespent 117 119 +2 fallbackSort 1719 1717 -2 evalvar 1376 1374 -2 qrealloc 36 33 -3 ... ... ... ... singlemount 4579 4569 -10 process_stdin 443 433 -10 patch_main 1111 1101 -10 ifupdown_main 2175 2165 -10 file_action_grep 90 80 -10 uuidcache_init 649 637 -12 hush_main 797 785 -12 read_config 230 217 -13 dpkg_main 3835 3820 -15 read_line_input 3134 3110 -24 sysctl_main 232 203 -29 config_open 40 10 -30 WARN_BAD_LINE 44 - -44 login_main 1714 1575 -139 ------------------------------------------------------------------------------ (add/remove: 5/1 grow/shrink: 8/74 up/down: 174/-737) Total: -563 bytes
* *: rename ATTRIBUTE_XXX to just XXX.Denis Vlasenko2008-07-051-1/+1
|
* style fixes, no code changesDenis Vlasenko2008-06-261-1/+1
|
* *: more uniform naming: s/xmalloc_getline/xmalloc_fgetline/Denis Vlasenko2008-03-261-2/+2
|
* patch: add support for -R. ~ +110 byte. By Pascal Bellard <pascal.bellard AT ↵Denis Vlasenko2008-03-261-18/+34
| | | | | | | | | | | | | | | | | | | | | | | ads-lu.com> fbsplash: new applet by Michele Sanges <michele.sanges AT otomelara.it function old new delta fbsplash_main - 1525 +1525 fb_drawfullrectangle - 118 +118 static.param_value - 100 +100 packed_usage 23776 23872 +96 applet_names 1843 1852 +9 applet_main 1120 1124 +4 read_line_input 3156 3158 +2 applet_nameofs 560 562 +2 applet_install_loc 140 141 +1 ------------------------------------------------------------------------------ (add/remove: 3/0 grow/shrink: 6/0 up/down: 1857/0) Total: 1857 bytes text data bss dec hex filename 799233 641 7380 807254 c5156 busybox_old 801202 641 7380 809223 c5907 busybox_unstripped