<feed xmlns='http://www.w3.org/2005/Atom'>
<title>busybox-w32/coreutils/join.c, branch join2</title>
<subtitle>A mirror of https://github.com/rmyorston/busybox-w32.git
</subtitle>
<id>https://git.lua4.win/busybox-w32/atom?h=join2</id>
<link rel='self' href='https://git.lua4.win/busybox-w32/atom?h=join2'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/'/>
<updated>2026-07-03T13:54:13+00:00</updated>
<entry>
<title>join: code shrink (4)</title>
<updated>2026-07-03T13:54:13+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2026-07-03T13:54:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=d58fec2ae013f00f86dee5ce26b259761c63fffd'/>
<id>urn:sha1:d58fec2ae013f00f86dee5ce26b259761c63fffd</id>
<content type='text'>
The user supplies field numbers with the -o, -1 and -2 options.
It feels more natural to convert these to 0-based field indices
in the code.

Saves 32-48 bytes.

Signed-off-by: Ron Yorston &lt;rmy@pobox.com&gt;
</content>
</entry>
<entry>
<title>join: code shrink (3)</title>
<updated>2026-07-03T13:40:27+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2026-07-03T12:50:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=696758b57738090390df9c2619c3cc5206e74146'/>
<id>urn:sha1:696758b57738090390df9c2619c3cc5206e74146</id>
<content type='text'>
When splitting the fields of a line, keep the string allocated
for the line and make the 'fields' array point into it rather
than allocating a new string for each field.

Saves 48 bytes.

Signed-off-by: Ron Yorston &lt;rmy@pobox.com&gt;
</content>
</entry>
<entry>
<title>join: code shrink (2)</title>
<updated>2026-07-03T11:39:20+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2026-07-03T11:39:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=00cf32a21dba0187ece976bc9d33e4a8a8af8875'/>
<id>urn:sha1:00cf32a21dba0187ece976bc9d33e4a8a8af8875</id>
<content type='text'>
Reduce the amount of duplicated code in readfields() by handling
a pushed back line inside the main loop, with a flag to indicate
the first pass through the loop.

Replace some memcpy() calls with structure assignments.

Fix a bug in the code to increase the size of the 'lines' array.
It set the capacity to either 8 or 0.

Saves 112-128 bytes.

Signed-off-by: Ron Yorston &lt;rmy@pobox.com&gt;
</content>
</entry>
<entry>
<title>join: code shrink</title>
<updated>2026-06-30T08:07:06+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2026-06-30T08:07:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=b2fcbec6605532b7fa9a6e004bab7f731e956913'/>
<id>urn:sha1:b2fcbec6605532b7fa9a6e004bab7f731e956913</id>
<content type='text'>
Adopt some BusyBox idioms in join_main().  In particular:

- The '-a' and '-v' options are mutually exclusive. Enforce this
  in getopt32() instead of by hand.  Also, since they're mutually
  exclusive we don't need a distinct list for each.

- Control some clean-up code with ENABLE_FEATURE_CLEAN_UP.

There are also a few cosmetic changes.

Saves 204-256 bytes.

Signed-off-by: Ron Yorston &lt;rmy@pobox.com&gt;
</content>
</entry>
<entry>
<title>join: minor adjustments</title>
<updated>2026-01-02T14:20:26+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2026-01-02T14:20:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=6075ab704a0fc5b9d888097b781c2e8271102a64'/>
<id>urn:sha1:6075ab704a0fc5b9d888097b781c2e8271102a64</id>
<content type='text'>
- Update the size estimate to follow upstream's methodology

- Disable the applet by default until it's accepted upstream

- Add a minimal test script, stealing an example from POSIX
</content>
</entry>
<entry>
<title>join: update docs and fix some omissions</title>
<updated>2026-01-02T13:07:13+00:00</updated>
<author>
<name>mbartlett21</name>
<email>mjmouse9999@gmail.com</email>
</author>
<published>2025-12-31T02:43:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=02b54c5c407a0f17eaf702e147439fd65ac1c4c5'/>
<id>urn:sha1:02b54c5c407a0f17eaf702e147439fd65ac1c4c5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>join: new applet</title>
<updated>2026-01-02T13:07:13+00:00</updated>
<author>
<name>mbartlett21</name>
<email>mjmouse9999@gmail.com</email>
</author>
<published>2025-12-25T12:18:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=3eb7c8944011a472477ee39c57c8f2fd92dc7aa7'/>
<id>urn:sha1:3eb7c8944011a472477ee39c57c8f2fd92dc7aa7</id>
<content type='text'>
Join joins two sorted input files on matching fields. It supports the
options required by POSIX, including the combinatorial output for
equal fields.

Adds 3 KiB
</content>
</entry>
</feed>
