On 18/06/2010 14:26, Davide Dozza wrote:
> This is the call stack entries.
>
> tlmi.dll!ImplStringLen(const char * pStr=0x00000000) Line 81 + 0x3
> bytes C++
>
> tlmi.dll!String::String(const char * pByteStr=0x00000000, unsigned short
> eTextEncoding=11, unsigned long nCvtFlags=819) Line 95 + 0x12 bytes C++
>
> transex3.exe!Export::GetTempFile() Line 707 + 0x1e bytes C++
>
> transex3.exe!Export::GetNativeFile(ByteString sSource={...}) Line 623
> + 0x9 bytes C++
>
> transex3.exe!GetNextFile() Line 251 + 0x33 bytes C++
>
> transex3.exe!main(int argc=11, char * * argv=0x00964528) Line 289 +
> 0x5 bytes C
>
> transex3.exe!__tmainCRTStartup() Line 582 + 0x17 bytes C
> kernel32.dll!7c817077()
> [Frames below may be incorrect and/or missing, no symbols loaded for
> kernel32.dll]
>
>
> Therefore by double clicking starting on top of call stack I have:
>
> tstring.cxx
> - pTempStr bad pointer
>
> structvt.cxx
> - rtl_string2UString( (rtl_uString **)(&mpData),
> pByteStr, ImplStringLen( pByteStr ),
> eTextEncoding, nCvtFlags );
>
> export2.cxx
> - String sTempDir( Export::GetEnv( "TEMP" ), RTL_TEXTENCODING_ASCII_US );
ok, that's the problem.
apparently you don't have the $TEMP variable defined, so GetEnv returns a
null pointer.
but transex3 really shouldn't crash here, so i've filed:
http://qa.openoffice.org/issues/show_bug.cgi?id=112512
you can try to apply the patch i've attached in the issue and rebuild
l10ntools.
alternatively setting TEMP should also work.
> export2.cxx
> - DirEntry aTemp( GetTempFile());
>
> export.cxx
>
> srclex.l
> - if ( !pFile )
>
> I don't know if it's clear enough.
>
> Anyway what I find strange it such line code in export2.cxx:
> String sTempDir( Export::GetEnv( "TEMP" ), RTL_TEXTENCODING_ASCII_US
>
> The TEMP variable is involved.
>
> I'll try to change it to C:/Temp instead of Documents and
> Settings/utente1/Temp
>
> Davide
--
"We also go to all kinds of interesting lengths to avoid problems with
viruses and worms. For example, we have a hack in our flavor of Wine,
in the CreateProcess call (the code to start an executable) that
basically checks to see if the parent process is outlook.exe, and if
it is, we crash and burn, preventing many of the worms and such from
running." -- Jeremy White
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]