diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2013-09-12 05:33:36 -0400 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-09-12 16:48:38 +0100 |
commit | ebfdddc23ff78231a819c62c8ffcced9633aa08b (patch) | |
tree | d0df6a366d8a52e9bc337a074355d4a0412b006c | |
parent | 01d3b15518b981199120b3b9c6923678244aefdc (diff) | |
download | openembedded-core-ebfdddc23ff78231a819c62c8ffcced9633aa08b.tar.gz openembedded-core-ebfdddc23ff78231a819c62c8ffcced9633aa08b.tar.bz2 openembedded-core-ebfdddc23ff78231a819c62c8ffcced9633aa08b.zip |
icu-native: do_install: Segmentation fault
There was a "Segmentation fault" error when build icu-native when the
TMPDIR is in a deep directory (for example, when len(readlink -f $TMPDIR
== 410)), use LARGE_BUFFER_MAX_SIZE for cmd rather than
SMALL_BUFFER_MAX_SIZE would fix the problem, this should be a misplay
because other cmd uses LARGE_BUFFER_MAX_SIZE.
[YOCTO #5171]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/recipes-support/icu/icu-51.2/icu-pkgdata-large-cmd.patch | 29 | ||||
-rw-r--r-- | meta/recipes-support/icu/icu_51.2.bb | 4 |
2 files changed, 32 insertions, 1 deletions
diff --git a/meta/recipes-support/icu/icu-51.2/icu-pkgdata-large-cmd.patch b/meta/recipes-support/icu/icu-51.2/icu-pkgdata-large-cmd.patch new file mode 100644 index 0000000000..6e40659227 --- /dev/null +++ b/meta/recipes-support/icu/icu-51.2/icu-pkgdata-large-cmd.patch @@ -0,0 +1,29 @@ +pkgdata.cpp: use LARGE_BUFFER_MAX_SIZE for cmd + +Use LARGE_BUFFER_MAX_SIZE for cmd rather than SMALL_BUFFER_MAX_SIZE, +otherwise there was a Segmentation fault error when the command line is +long, this should be a misplay since other cmd uses +LARGE_BUFFER_MAX_SIZE. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang <liezhi.yang@windriver.com> +--- + tools/pkgdata/pkgdata.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tools/pkgdata/pkgdata.cpp b/tools/pkgdata/pkgdata.cpp +--- a/tools/pkgdata/pkgdata.cpp ++++ b/tools/pkgdata/pkgdata.cpp +@@ -1019,7 +1019,7 @@ normal_symlink_mode: + + static int32_t pkg_installLibrary(const char *installDir, const char *targetDir, UBool noVersion) { + int32_t result = 0; +- char cmd[SMALL_BUFFER_MAX_SIZE]; ++ char cmd[LARGE_BUFFER_MAX_SIZE]; + + sprintf(cmd, "cd %s && %s %s %s%s%s", + targetDir, +-- +1.7.10.4 + diff --git a/meta/recipes-support/icu/icu_51.2.bb b/meta/recipes-support/icu/icu_51.2.bb index e865ba6ff3..1278d22a80 100644 --- a/meta/recipes-support/icu/icu_51.2.bb +++ b/meta/recipes-support/icu/icu_51.2.bb @@ -5,7 +5,9 @@ LIC_FILES_CHKSUM = "file://../license.html;md5=443a74288a72fad9069a74e7637192c1" PR = "r0" BASE_SRC_URI = "http://download.icu-project.org/files/icu4c/${PV}/icu4c-51_2-src.tgz" -SRC_URI = "${BASE_SRC_URI}" +SRC_URI = "${BASE_SRC_URI} \ + file://icu-pkgdata-large-cmd.patch \ + " SRC_URI[md5sum] = "072e501b87065f3a0ca888f1b5165709" SRC_URI[sha256sum] = "deb027a05f1b3bec03298b96fb93b28c84e9683c22e6f94effa67fdc7bd704cc" |