openoffice-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Steele, Raymond" <raymond.ste...@lmco.com>
Subject RE: EXTERNAL: Re: Building comphelper
Date Thu, 16 Jan 2014 20:04:19 GMT
Hey,

I just wanted to share the basics of what I have found so far. I still have no idea on how
to solve the issue.  Any help would be great!

Observed Behaviour
1.	OpenOffice starts, the splash screen with logo appears and then closes replaced with the
full application window and choices for specific OpenOffice projects.
2.	Selecting either the Word or Spreadsheet project causes a segmentation fault and closes
the application.
3.	Following the start of the application with the debugger, we can see the SidebarController
is created in a first pass without error (known because first time to this stop point does
not error).
4.	As the process continues, the SidebarController constructor is called a second time (unknown
why, but could be understood with more familiarity with the system).
5.	The failure doesn't appear in the constructor, but the trace follows down SidebarController
constructor call of "WeakReference<SidebarController> WeakController (this);"
6.	This template definition for WeakController uses Reference<Template>::Refrence( interface_type
*pInterface) as its definition in ::com::sun::star::uno::Reference.hxx.
7.	The function will try to convert the pInterface parameter to a XInterface type called _pInterface.
8.	If it succeeds in converting the pInterface to _pInterface then the function will try to
acquire a new reference.
9.	Assumption: Creating this new reference calls SidebarController::notifyContextChangeEvent
with a corrupt or bad rEvent. This assumption is based on the stack where the immediate next
routine after the Reference function call is the notifyContextChangeEvent, also while following
along in the debugger, the rEvent parameter at this point is already corrupted with the value
<ERROR> stored in the structure.
10.	It is later after the notifyContextChangeEvent calls Context and then ustring that the
segmentation fault occurs, but I believe the error located in rEvent is what causes this later
problem.

Thanks,

David Meffe

-----Original Message-----
From: Herbert Duerr [mailto:hdu@apache.org] 
Sent: Friday, January 10, 2014 3:29 AM
To: dev@openoffice.apache.org
Cc: Meffe, David K; Steele, Raymond
Subject: Re: EXTERNAL: Re: Building comphelper

On 09.01.2014 22:48, Steele, Raymond wrote:
> Attached is a copy of the stack trace when we tried to launch both the Word Processor
and the Spreadsheet application in OpenOffice.  We are going to attempt to resolve the crash
based on this information, but if anything pops out at you, please let us know.

The crashes in Writer and Calc you are seeing both happen when copy constructing an OUString
from one provided by the SidebarController, so the provided string must be bad.

I suggest to set a breakpoint at SidebarController.cxx:257 and examine the rEvent.ApplicationName
and rEvent.ContextName whether these are good strings. From the stack I'd say they probably
are not. Then go up the stack and check where they come from and why their are bad.

Good luck!
(I'll be away next week, starting this weekend)

Herbert

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@openoffice.apache.org
For additional commands, e-mail: dev-help@openoffice.apache.org


Mime
View raw message