Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37404304
en ru br
Репозитории ALT

Группа :: Офис
Пакет: LibreOffice

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: alt-002-tmpdir.patch
Скачать


diff --git a/desktop/unx/source/start.c b/desktop/unx/source/start.c
index e3e5441bf..a75b05401 100644
--- a/desktop/unx/source/start.c
+++ b/desktop/unx/source/start.c
@@ -263,6 +263,7 @@ static rtl_uString *get_pipe_path(rtl_uString *pAppPath)
     rtlBootstrapHandle handle;
     rtl_uString *pMd5hash = NULL;
     sal_Unicode pUnicode[RTL_USTR_MAX_VALUEOFINT32];
+    char *env_tmpdir;
 
     /* setup bootstrap filename */
     rtl_uString_newFromAscii(&pPath, "file://");
@@ -289,7 +290,10 @@ static rtl_uString *get_pipe_path(rtl_uString *pAppPath)
     if (!pMd5hash)
         rtl_uString_new(&pMd5hash);
 
-    if (access(PIPEDEFAULTPATH, W_OK) == 0)
+    env_tmpdir = getenv("TMPDIR");
+    if ( access( env_tmpdir, W_OK ) == 0 )
+        rtl_uString_newFromAscii( &pResult, env_tmpdir );
+    else if (access(PIPEDEFAULTPATH, W_OK) == 0)
     {
         rtl_uString_newFromAscii(&pResult, PIPEDEFAULTPATH);
     }
diff --git a/sal/osl/unx/pipe.cxx b/sal/osl/unx/pipe.cxx
index f9037a14e..f3cc63246 100644
--- a/sal/osl/unx/pipe.cxx
+++ b/sal/osl/unx/pipe.cxx
@@ -143,11 +143,17 @@ static oslPipe osl_psz_createPipe(const sal_Char *pszPipeName, oslPipeOptions Op
     int Flags;
     size_t len;
     struct sockaddr_un addr;
+    char *env_tmpdir;
 
     OString name;
     oslPipe pPipe;
 
-    if (access(PIPEDEFAULTPATH.getStr(), W_OK) == 0)
+    env_tmpdir = getenv("TMPDIR");
+    if (access(env_tmpdir, W_OK) == 0)
+    {
+        name = env_tmpdir;
+    }
+    else if (access(PIPEDEFAULTPATH.getStr(), W_OK) == 0)
         name = PIPEDEFAULTPATH;
     else if (access(PIPEALTERNATEPATH.getStr(), W_OK) == 0)
         name = PIPEALTERNATEPATH;
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin