diff options
| author | Ron Yorston <rmy@pobox.com> | 2023-08-15 08:38:21 +0100 |
|---|---|---|
| committer | Ron Yorston <rmy@pobox.com> | 2023-08-15 08:38:21 +0100 |
| commit | 41384b4829db50c7b7ba07c720d299ce098d320d (patch) | |
| tree | 25ce9f6ecb9dffb13d1f87d6fd580fd3f4c8a738 /shell | |
| parent | dc5cdc79c18b2e0723f899a504bdfa3f751d422f (diff) | |
| download | busybox-w32-41384b4829db50c7b7ba07c720d299ce098d320d.tar.gz busybox-w32-41384b4829db50c7b7ba07c720d299ce098d320d.tar.bz2 busybox-w32-41384b4829db50c7b7ba07c720d299ce098d320d.zip | |
ash: code shrink
Move the code to handle the case nprocs == 1 from jobtab_size()
to procstat_size().
Saves 16 bytes.
Diffstat (limited to 'shell')
| -rw-r--r-- | shell/ash.c | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/shell/ash.c b/shell/ash.c index d0ecd501a..c60657b9b 100644 --- a/shell/ash.c +++ b/shell/ash.c | |||
| @@ -16750,9 +16750,12 @@ procstat_size(struct datasize ds, int nj) | |||
| 16750 | { | 16750 | { |
| 16751 | struct job *jp = jobtab + nj; | 16751 | struct job *jp = jobtab + nj; |
| 16752 | 16752 | ||
| 16753 | ds.funcblocksize += sizeof(struct procstat) * jp->nprocs; | 16753 | if (jp->ps != &jp->ps0) |
| 16754 | ds.funcblocksize += sizeof(struct procstat) * jp->nprocs; | ||
| 16755 | |||
| 16754 | for (int i = 0; i < jp->nprocs; i++) | 16756 | for (int i = 0; i < jp->nprocs; i++) |
| 16755 | ds.funcstringsize += align_len(jp->ps[i].ps_cmd); | 16757 | ds.funcstringsize += align_len(jp->ps[i].ps_cmd); |
| 16758 | |||
| 16756 | return ds; | 16759 | return ds; |
| 16757 | } | 16760 | } |
| 16758 | 16761 | ||
| @@ -16780,16 +16783,9 @@ procstat_copy(int nj) | |||
| 16780 | static struct datasize | 16783 | static struct datasize |
| 16781 | jobtab_size(struct datasize ds) | 16784 | jobtab_size(struct datasize ds) |
| 16782 | { | 16785 | { |
| 16783 | int i; | ||
| 16784 | |||
| 16785 | ds.funcblocksize += sizeof(struct job) * njobs; | 16786 | ds.funcblocksize += sizeof(struct job) * njobs; |
| 16786 | for (i = 0; i < njobs; i++) { | 16787 | for (int i = 0; i < njobs; i++) { |
| 16787 | if (!jobtab[i].used) | 16788 | if (jobtab[i].used) |
| 16788 | continue; | ||
| 16789 | |||
| 16790 | if (jobtab[i].ps == &jobtab[i].ps0) | ||
| 16791 | ds.funcstringsize += align_len(jobtab[i].ps0.ps_cmd); | ||
| 16792 | else | ||
| 16793 | ds = procstat_size(ds, i); | 16789 | ds = procstat_size(ds, i); |
| 16794 | } | 16790 | } |
| 16795 | return ds; | 16791 | return ds; |
