Michael Stahl ha scritto:
> On 18/06/2010 12:08, Davide Dozza wrote:
>> Michael Stahl ha scritto:
>>> On 18/06/2010 11:50, Davide Dozza wrote:
>>>> I did it.
>>> ok,
>>>
>>>> The problem happens on tstring.cxx
>>>>
>>>> xub_StrLen ImplStringLen( const sal_Char* pStr )
>>>> {
>>>>    const sal_Char* pTempStr = pStr;
>>>>    while( *pTempStr )
>>>>            ++pTempStr;
>>>>    return (xub_StrLen)(pTempStr-pStr);
>>>> }
>>>>
>>>> *pTempStr is a null pointer.
>>>>
>>>> Davide
>>> well, yes, that's where it crashes.
>>> but the problem is that somebody is calling the Len() function on a null
>>> pointer.
>>> you need to post the stack backtrace to find out where the cause of the
>>> problem is.
>>> to get the backtrace you need to attach the debugger somehow.
>>> (i don't usually work on windows, so i can't remember how that is done...)
>>>
>> I'm not an expert too but is it the call stack?
>> It's enough if I just cut and paste info in it?
>>
>> Davide
> 
> did you attach something to your mail?
> because i'm wondering what "it" is, and the most likely explanation is
> that "it" is an attachment that the silly mailing list software has
> removed from your mail.
> 
> please paste "it" into your mail instead :)
> 

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 );

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








Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to