Type: required
         Title: tools::getProcessWorkingDir
     Posted by: [EMAIL PROTECTED]
      Affected: -
         TaskId: i87730
<http://www.openoffice.org/issues/show_bug.cgi?id=87730>
Effective from: cws_dev300_sb87


*Summary*
--------
tools/getprocessworkingdir.hxx:
bool tools::getProcessWorkingDir(rtl::OUString * url)

*Description*
-------------
See <http://www.openoffice.org/issues/show_bug.cgi?id=87730> why on
Windows soffice.bin and similar processes need to be called with a
changed current working directory.  That implies that calls to
osl_getProcessWorkingDir within such a process now return meaningless
values (i.e., not the current working directory at the time
soffice.exe was started).  Therefore, tools::getProcessWorkingDir was
introduced as a replacement (all appearances of
osl_getProcessWorkingDir in the code that appeared relevant have
already been changed).

For tools::getProcessWorkingDir to work, the exe launchers
(soffice.exe, unopkg.exe) now pass an additional bootstrap parameter
command line argument -env:OOO_CWD=... to their subordinate processes,
encoding the original working directory in the following form:

ASCII "0": no working directory could be determined, or

ASCII "1" followed by (ASCII) file URL of working directory, or

ASCII "2" followed by UTF-8 encoded system-specific notation of
working directory.

The pipe between two soffice.bin processes (or on Windows with
perftune.ini an soffice.exe and an soffice.bin) over which one soffice
sends its command line arguments to a second, already running soffice
always had a similar problem (until now solved by making relative file
command line arguments absolute in the sending soffice.bin, missing
from a sending soffice.exe).  This has now been consolidated, in that
the sending soffice no longer makes file arguments absolute, but
rather sends its working directory over the pipe.  The protocol
described at
<http://www.openoffice.org/servlets/ReadMsg?list=dev&msgNo=20674> has
been changed as follows:

5.1.1a  An ASCII byte sequence encoding the original working directory
in the form given above (starting with "0", "1", or "2"),
backslash-escaped as described in 5.1.2.3.


Send feedback to [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to