To comment on the following update, log in, then open the issue:
http://www.openoffice.org/issues/show_bug.cgi?id=53572





------- Additional comments from [EMAIL PROTECTED] Wed May 10 15:00:44 -0700 
2006 -------
@hro:

I am trying to rewrite the sources like this.

---
void SAL_CALL DeleteTargetDevice( DVTARGETDEVICE* ptd )
{
#ifdef __MINGW32__
        class SEHandler
        {
        public:
                SEHandler()
                {
                        m_ER.hp = handler;
                        asm("movl %%fs:0, %%eax\n\t"
                                "movl %%eax, %0": : "m" (m_ER.prev): "%eax" );
                        asm("movl %0, %%eax\n\t"
                                "movl %%eax, %%fs:0": : "r" (&m_ER): "%eax" );
                }
                ~SEHandler()
                {
                        asm("movl %0, %%eax \n\t"
                                "movl %%eax, %%fs:0"
                                : : "m" (m_ER.prev): "%eax");
                }
        private:
                static int handler(
                        struct _EXCEPTION_RECORD *ExceptionRecord,
                        void * EstablisherFrame,
                        struct _CONTEXT *ContextRecord,
                        void * DispatcherContext)
                {
                        throw(ExceptionRecord);
                }
                typedef int (*handler_p)(
                        struct _EXCEPTION_RECORD *ExceptionRecord,
                        void * EstablisherFrame,
                        struct _CONTEXT *ContextRecord,
                        void * DispatcherContext);
                struct _ER {
                        struct _ER* prev;
                        handler_p hp;
                } m_ER;
        };

        SEHandler skippingh;
        try
#else
        __try
#endif
        {
                CoTaskMemFree( ptd );
        }
#ifdef __MINGW32__
        catch(struct _EXCEPTION_RECORD*)
#else
        __except( EXCEPTION_EXECUTE_HANDLER )
#endif
        {
                OSL_ENSURE( sal_False, "Error DeleteTargetDevice" );
        }
}

tono (Takashi Ono)


---------------------------------------------------------------------
Please do not reply to this automatically generated notification from
Issue Tracker. Please log onto the website and enter your comments.
http://qa.openoffice.org/issue_handling/project_issues.html#notification

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


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

Reply via email to