aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2016-04-21 21:03:51 +0200
committerDenys Vlasenko <vda.linux@googlemail.com>2016-04-21 21:03:51 +0200
commitf56fb5eb1120a92bdfb6d0ce64b3430b42a2efa0 (patch)
tree6e013fd342ece68ad902b849155625a160582967
parentdf70a43af281f7e653b1c95ff17201669fdcfca3 (diff)
downloadbusybox-w32-f56fb5eb1120a92bdfb6d0ce64b3430b42a2efa0.tar.gz
busybox-w32-f56fb5eb1120a92bdfb6d0ce64b3430b42a2efa0.tar.bz2
busybox-w32-f56fb5eb1120a92bdfb6d0ce64b3430b42a2efa0.zip
libbb: make "COMMON_BUFSIZE = 1024 bytes, the buffer will be malloced" work
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--libbb/common_bufsiz.c6
-rwxr-xr-xscripts/generate_BUFSIZ.sh5
2 files changed, 6 insertions, 5 deletions
diff --git a/libbb/common_bufsiz.c b/libbb/common_bufsiz.c
index c16c361c9..26faafcbb 100644
--- a/libbb/common_bufsiz.c
+++ b/libbb/common_bufsiz.c
@@ -55,14 +55,14 @@ char bb_common_bufsiz1[COMMON_BUFSIZE] ALIGNED(sizeof(long long));
55 55
56# ifndef setup_common_bufsiz 56# ifndef setup_common_bufsiz
57/* 57/*
58 * It is not a "((void)0)" macro. It means we have to provide this function. 58 * It is not defined as a dummy macro.
59 * It means we have to provide this function.
59 */ 60 */
60char* bb_common_bufsiz1; 61char* bb_common_bufsiz1;
61char* setup_common_bufsiz(void) 62void setup_common_bufsiz(void)
62{ 63{
63 if (!bb_common_bufsiz1) 64 if (!bb_common_bufsiz1)
64 bb_common_bufsiz1 = xzalloc(COMMON_BUFSIZE); 65 bb_common_bufsiz1 = xzalloc(COMMON_BUFSIZE);
65 return bb_common_bufsiz1;
66} 66}
67# else 67# else
68# ifndef bb_common_bufsiz1 68# ifndef bb_common_bufsiz1
diff --git a/scripts/generate_BUFSIZ.sh b/scripts/generate_BUFSIZ.sh
index bb0738641..d54142597 100755
--- a/scripts/generate_BUFSIZ.sh
+++ b/scripts/generate_BUFSIZ.sh
@@ -87,7 +87,8 @@ if test $REM -lt 1024; then
87 echo "Rerun make to build a binary which doesn't use it!" 87 echo "Rerun make to build a binary which doesn't use it!"
88 exit 1 88 exit 1
89 fi 89 fi
90 exit 0 90 echo "COMMON_BUFSIZE = 1024 bytes, the buffer will be malloced"
91 exit 0
91fi 92fi
92 93
93# _end[] has REM bytes for bb_common_bufsiz1[] 94# _end[] has REM bytes for bb_common_bufsiz1[]
@@ -102,7 +103,7 @@ echo "#define setup_common_bufsiz() ((void)0)"
102} | regenerate "$common_bufsiz_h" 103} | regenerate "$common_bufsiz_h"
103echo $REM >"$common_bufsiz_h.BUFSIZE" 104echo $REM >"$common_bufsiz_h.BUFSIZE"
104 105
105# Check that code did not grow too much and thus _end[] did not shink: 106# Check that code did not grow too much and thus _end[] did not shrink:
106if test $OLD -gt $REM; then 107if test $OLD -gt $REM; then
107 echo "Warning! Space in _end[] has decreased from $OLD to $REM bytes!" 108 echo "Warning! Space in _end[] has decreased from $OLD to $REM bytes!"
108 echo "Rerun make!" 109 echo "Rerun make!"