mozilla-icu-strncat.patch
author Wolfgang Rosenauer <wr@rosenauer.org>
Sun, 23 Aug 2015 15:29:44 +0200
changeset 881 1268ddc9dc16
parent 869 0dd25a92df97
permissions -rw-r--r--
rebased patches
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
716
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     1
# HG changeset patch
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     2
# Parent 29be2a4daa0f512d22bde85b97b5460839026571
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     3
# User Wolfgang Rosenauer <wr@rosenauer.org>
869
0dd25a92df97 working FF 40 build
Wolfgang Rosenauer <wr@rosenauer.org>
parents: 716
diff changeset
     4
# Parent  a7d16f0faf5d4881dbea524340f881d5850710e4
716
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     5
From: Jan Engelhardt <jengelh@inai.de>
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     6
Reference: http://bugs.icu-project.org/trac/ticket/7808
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     7
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     8
diff --git a/intl/icu/source/tools/pkgdata/pkgdata.cpp b/intl/icu/source/tools/pkgdata/pkgdata.cpp
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     9
--- a/intl/icu/source/tools/pkgdata/pkgdata.cpp
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    10
+++ b/intl/icu/source/tools/pkgdata/pkgdata.cpp
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    11
@@ -1975,22 +1975,22 @@ static void loadLists(UPKGOptions *o, UE
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    12
     FILE *p = NULL;
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    13
     size_t n;
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    14
     static char buf[512] = "";
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    15
     char cmdBuf[1024];
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    16
     UErrorCode status = U_ZERO_ERROR;
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    17
     const char cmd[] = "icu-config --incpkgdatafile";
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    18
 
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    19
     /* #1 try the same path where pkgdata was called from. */
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    20
-    findDirname(progname, cmdBuf, 1024, &status);
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    21
+    findDirname(progname, cmdBuf, sizeof(cmdBuf), &status);
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    22
     if(U_SUCCESS(status)) {
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    23
       if (cmdBuf[0] != 0) {
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    24
-          uprv_strncat(cmdBuf, U_FILE_SEP_STRING, 1024);
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    25
+          uprv_strncat(cmdBuf, U_FILE_SEP_STRING, sizeof(cmdBuf)-1-strlen(cmdBuf));
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    26
       }
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    27
-      uprv_strncat(cmdBuf, cmd, 1024);
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    28
+      uprv_strncat(cmdBuf, cmd, sizeof(cmdBuf)-1-strlen(cmdBuf));
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    29
       
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    30
       if(verbose) {
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    31
         fprintf(stdout, "# Calling icu-config: %s\n", cmdBuf);
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    32
       }
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    33
       p = popen(cmdBuf, "r");
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    34
     }
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    35
 
cef565f1c325 update to Firefox 29.0b7
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    36
     if(p == NULL || (n = fread(buf, 1, 511, p)) <= 0) {