From b7a1c28108f79e7c2d05db54c9c4663a20712950 Mon Sep 17 00:00:00 2001 From: Maho Nakata Date: Wed, 15 Mar 2006 12:55:21 +0000 Subject: Remove upstreamed patches Submitted by: "Jack L." --- .../files/patch-backtrace | 95 ---------------------- 1 file changed, 95 deletions(-) delete mode 100644 editors/openoffice.org-vcltesttool/files/patch-backtrace (limited to 'editors/openoffice.org-vcltesttool/files/patch-backtrace') diff --git a/editors/openoffice.org-vcltesttool/files/patch-backtrace b/editors/openoffice.org-vcltesttool/files/patch-backtrace deleted file mode 100644 index 523bba02d5e4..000000000000 --- a/editors/openoffice.org-vcltesttool/files/patch-backtrace +++ /dev/null @@ -1,95 +0,0 @@ -Issuetracker : #i56946# -CWS : N/A -Author : (JCA) -Description : FreeBSD porting : An implementation of backtrace at sal/osl/unx -To pass the compilation, we had been preparing dummy function at sal. -We implemented this. - ---- sal/osl/unx/backtrace.c Thu Sep 8 23:52:44 2005 -+++ sal/osl/unx/backtrace.c Sun Oct 23 09:19:04 2005 -@@ -129,6 +129,7 @@ - #include - #include - #include -+#include - #include "backtrace.h" - - #define FRAME_PTR_OFFSET 1 -@@ -136,11 +137,55 @@ - - int backtrace( void **buffer, int max_frames ) - { -- return 1; -+ struct frame *fp; -+ jmp_buf ctx; -+ int i; -+ /* get stack- and framepointer */ -+ setjmp(ctx); -+ fp = (struct frame*)(((size_t*)(ctx))[FRAME_PTR_OFFSET]); -+ for ( i=0; (ifr_savfp; -+ /* iterate through backtrace */ -+ for (i=0; fp && fp->fr_savpc && ifr_savpc; -+ /* next frame */ -+ fp=fp->fr_savfp; -+ } -+ return i; - } - - void backtrace_symbols_fd( void **buffer, int size, int fd ) - { -+ FILE *fp = fdopen( fd, "w" ); -+ -+ if ( fp ) -+ { -+ void **pFramePtr; -+ for ( pFramePtr = buffer; size > 0 && pFramePtr && *pFramePtr; pFramePtr++, size-- ) -+ { -+ Dl_info dli; -+ ptrdiff_t offset; -+ -+ if ( 0 != dladdr( *pFramePtr, &dli ) ) -+ { -+ if ( dli.dli_fname && dli.dli_fbase ) -+ { -+ offset = (ptrdiff_t)*pFramePtr - (ptrdiff_t)dli.dli_fbase; -+ fprintf( fp, "%s+0x%x", dli.dli_fname, offset ); -+ } -+ if ( dli.dli_sname && dli.dli_saddr ) -+ { -+ offset = (ptrdiff_t)*pFramePtr - (ptrdiff_t)dli.dli_saddr; -+ fprintf( fp, "(%s+0x%x)", dli.dli_sname, offset ); -+ } -+ } -+ fprintf( fp, "[0x%x]\n", *pFramePtr ); -+ } -+ fflush( fp ); -+ fclose( fp ); -+ } - - } - #endif /* defined FREEBSD */ - ---- sal/osl/unx/backtrace.h Thu Sep 8 23:52:59 2005 -+++ sal/osl/unx/backtrace.h Sun Oct 23 09:19:40 2005 -@@ -46,6 +46,16 @@ - - void backtrace_symbols_fd( void **buffer, int size, int fd ); - -+/* no frame.h on FreeBSD */ -+#if defined FREEBSD -+struct frame { -+ long arg0[8]; -+ long arg1[6]; -+ struct frame *fr_savfp; -+ long fr_savpc; -+}; -+#endif -+ - #ifdef __cplusplus - } /* extern "C" */ - #endif - -- cgit v1.2.3