Re: [framework-dev] Could this cause deadlock problem in DropTarget::initialize

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Re: [framework-dev] Could this cause deadlock problem in DropTarget::initialize

Carsten Driesner
Huaidong Qiu wrote:

> Hi Carsten,
>
> Yes, you are right, the possibility of OleInitialize failure is very low.
> There wasn't two thread calling DropTarget::initialize, and the calling
> thread is not main thread, I just think DropTarget::initialize call should
> return already.
>
> But there are another possibility, the freeze main be caused by the main
> thread, looks like some recursive calling going on. Could give some
> suggestion about this.
>
> BTW: this comes from a crash report.
>  
Hi Huaidong,

This is a completely different call stack and you are right that it
looks like a strange recursion problem. I am not very familiar with this
part of OpenOffice.org as the responsible code resides in VCL which is
maintained by the gsl team. Hopefully someone from the team can give us
some more information about this strange stack.

Regards,
Carsten

> Thanks
>
>
> function name:     void __cdecl ImplSalYieldMutexAcquireWithWait(void)
> function name:     long __cdecl ImplHandleSalObjKeyMsg(struct HWND__
> *,unsigned int,unsigned int,long)
> function name:     long __stdcall SalFrameWndProc(struct HWND__ *,unsigned
> int,unsigned int,long,int &)
> function name:     long __stdcall SalFrameWndProcW(struct HWND__ *,unsigned
> int,unsigned int,long)
> function name:     int __cdecl ImplGetMessage(struct tagMSG *,struct HWND__
> *,unsigned int,unsigned int)
> function name:     void __cdecl ImplSalYieldMutexAcquireWithWait(void)
> function name:     long __cdecl ImplHandleSalObjKeyMsg(struct HWND__
> *,unsigned int,unsigned int,long)
> function name:     long __stdcall SalFrameWndProc(struct HWND__ *,unsigned
> int,unsigned int,long,int &)
> function name:     long __stdcall SalFrameWndProcW(struct HWND__ *,unsigned
> int,unsigned int,long)
> function name:     int __cdecl ImplGetMessage(struct tagMSG *,struct HWND__
> *,unsigned int,unsigned int)
> function name:     void __cdecl ImplSalYieldMutexAcquireWithWait(void)
> function name:     long __cdecl ImplHandleSalObjKeyMsg(struct HWND__
> *,unsigned int,unsigned int,long)
> function name:     long __stdcall SalFrameWndProc(struct HWND__ *,unsigned
> int,unsigned int,long,int &)
> function name:     long __stdcall SalFrameWndProcW(struct HWND__ *,unsigned
> int,unsigned int,long)
> function name:     int __cdecl ImplGetMessage(struct tagMSG *,struct HWND__
> *,unsigned int,unsigned int)
> function name:     void __cdecl ImplSalYieldMutexAcquireWithWait(void)
> function name:     public: virtual void __thiscall
> WinSalInstance::Yield(bool,bool)
> function name:     public: static void __cdecl Application::Yield(bool)
> function name:     public: static void __cdecl Application::Execute(void)
> function name:     unsigned char __cdecl ImplSVMain(void)
> function name:     unsigned char __cdecl SVMain(void)
>  


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]