Hi Joe,

On Mon, 2021-08-23 at 14:29 -0700, Joe Slater wrote:
> Mitigate pathname truncation when installing in a project
> with a very long pathname.  The patch is on the master
> branch, but they have moved to a later version of icu
> so we cannot cherry-pick.
> 
> Signed-off-by: Joe Slater <[email protected]>
> ---
>  ...pkgdata-increase-command-buffer-size.patch | 43 +++++++++++++++++++
>  meta/recipes-support/icu/icu_68.2.bb          |  1 +
>  2 files changed, 44 insertions(+)
>  create mode 100644 meta/recipes-support/icu/icu/0001-pkgdata-increase-
> command-buffer-size.patch
> 
> diff --git a/meta/recipes-support/icu/icu/0001-pkgdata-increase-
> command-buffer-size.patch b/meta/recipes-support/icu/icu/0001-pkgdata-
> increase-command-buffer-size.patch
> new file mode 100644
> index 0000000000..ea68e4be9f
> --- /dev/null
> +++ b/meta/recipes-support/icu/icu/0001-pkgdata-increase-command-
> buffer-size.patch
> @@ -0,0 +1,43 @@
> +From ab6b1acdeed76899f8227c38ab7e7675c7673ff1 Mon Sep 17 00:00:00 2001
> +From: Joe Slater <[email protected]>
> +Date: Thu, 5 Aug 2021 09:23:48 -0700
> +Subject: [PATCH 1/1] pkgdata: increase command buffer size
> +
> +Make cmd LARGE_BUFFER_SIZE to avoid pathname truncation
> +when install paths are longer than about 150 characters.
> +
> +Upstream-Status: Pending

I think there was a comment from Alex on the original patch for master
requesting this be sent upstream first. Can you do that please?

Thanks,

Anuj

> +
> +Signed-off-by: Joe Slater <[email protected]>
> +---
> + source/tools/pkgdata/pkgdata.cpp | 6 +++---
> + 1 file changed, 3 insertions(+), 3 deletions(-)
> +
> +diff --git a/source/tools/pkgdata/pkgdata.cpp
> b/source/tools/pkgdata/pkgdata.cpp
> +index 5ab682e..d4b70ef 100644
> +--- a/tools/pkgdata/pkgdata.cpp
> ++++ b/tools/pkgdata/pkgdata.cpp
> +@@ -1131,17 +1131,17 @@ 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];
> + 
> +     auto ret = snprintf(cmd,
> +-            SMALL_BUFFER_MAX_SIZE,
> ++            LARGE_BUFFER_MAX_SIZE,
> +             "cd %s && %s %s %s%s%s",
> +             targetDir,
> +             pkgDataFlags[INSTALL_CMD],
> +             libFileNames[LIB_FILE_VERSION],
> +             installDir, PKGDATA_FILE_SEP_STRING,
> libFileNames[LIB_FILE_VERSION]);
> +     (void)ret;
> +-    U_ASSERT(0 <= ret && ret < SMALL_BUFFER_MAX_SIZE);
> ++    U_ASSERT(0 <= ret && ret < LARGE_BUFFER_MAX_SIZE);
> + 
> +     result = runCommand(cmd);
> + 
> +-- 
> +2.29.2
> +
> diff --git a/meta/recipes-support/icu/icu_68.2.bb b/meta/recipes-
> support/icu/icu_68.2.bb
> index 1ca87feee4..130212d245 100644
> --- a/meta/recipes-support/icu/icu_68.2.bb
> +++ b/meta/recipes-support/icu/icu_68.2.bb
> @@ -107,6 +107,7 @@ SRC_URI = "${BASE_SRC_URI};name=code \
>             file://filter.json \
>             file://fix-install-manx.patch \
>             file://0001-icu-Added-armeb-support.patch \
> +           file://0001-pkgdata-increase-command-buffer-size.patch \
>             "
>  
>  SRC_URI_append_class-target = "\
> 
> 
> 

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#155199): 
https://lists.openembedded.org/g/openembedded-core/message/155199
Mute This Topic: https://lists.openembedded.org/mt/85096835/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to