diff options
author | Jan Holesovsky <kendy@collabora.com> | 2019-06-19 20:29:02 +0200 |
---|---|---|
committer | Michael Meeks <michael.meeks@collabora.com> | 2019-06-19 22:20:25 +0200 |
commit | 8756beb31ce7cf5c2e54963c6c29594c47de26b9 (patch) | |
tree | 60d7161711bfc7b7133d7f92d9bf68bc78a4648a | |
parent | 347e273a685097a0d3d00b782bf8989d9582d224 (diff) |
android: Fix type of a C string to be const char[].cp-android-19
With the wrong type, we were measusing the sizeof() wrongly, leading to
a hard to catch crash at start that appeared only from time to time.
Improve the concatenation too when at that.
Change-Id: I4a4ab2909124281aac99118d66c62d669294d5f7
Reviewed-on: https://gerrit.libreoffice.org/74375
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Michael Meeks <michael.meeks@collabora.com>
-rw-r--r-- | sal/android/libreofficekit-jni.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sal/android/libreofficekit-jni.c b/sal/android/libreofficekit-jni.c index 0f66fdc44fe0..1307ab6a5fbb 100644 --- a/sal/android/libreofficekit-jni.c +++ b/sal/android/libreofficekit-jni.c @@ -75,7 +75,8 @@ jboolean libreofficekit_initialize(JNIEnv* env, const char *cacheDirPath; const char *apkFilePath; - const char *fontsConf = "/etc/fonts/fonts.conf"; + size_t data_dir_len; + const char fontsConf[] = "/etc/fonts/fonts.conf"; char *fontsConfPath; setenv("OOO_DISABLE_RECOVERY", "1", 1); @@ -93,9 +94,10 @@ jboolean libreofficekit_initialize(JNIEnv* env, // TMPDIR is used by osl_getTempDirURL() setenv("TMPDIR", cache_dir, 1); - fontsConfPath = malloc(strlen(data_dir) + sizeof(fontsConf)); - strcpy(fontsConfPath, data_dir); - strcat(fontsConfPath, fontsConf); + data_dir_len = strlen(data_dir); + fontsConfPath = malloc(data_dir_len + sizeof(fontsConf)); + strncpy(fontsConfPath, data_dir, data_dir_len); + strncpy(fontsConfPath + data_dir_len, fontsConf, sizeof(fontsConf)); fd = open(fontsConfPath, O_RDONLY); if (fd != -1) { |