diff options
Diffstat (limited to 'macosx/tkMacOSXDebug.c')
-rw-r--r-- | macosx/tkMacOSXDebug.c | 28 |
1 files changed, 18 insertions, 10 deletions
diff --git a/macosx/tkMacOSXDebug.c b/macosx/tkMacOSXDebug.c index 88d23f4..ac2bef8 100644 --- a/macosx/tkMacOSXDebug.c +++ b/macosx/tkMacOSXDebug.c @@ -54,7 +54,7 @@ * software in accordance with the terms specified in this * license. * - * RCS: @(#) $Id: tkMacOSXDebug.c,v 1.2.2.13 2007/06/29 03:22:01 das Exp $ + * RCS: @(#) $Id: tkMacOSXDebug.c,v 1.2.2.14 2007/11/09 06:26:55 das Exp $ */ #include "tkMacOSXPrivate.h" @@ -62,9 +62,6 @@ #ifdef TK_MAC_DEBUG -#include <mach-o/dyld.h> -#include <mach-o/nlist.h> - typedef struct { EventKind kind; const char * name; @@ -456,22 +453,35 @@ TkMacOSXMouseTrackingResultToAscii(MouseTrackingResult r, char * buf) MODULE_SCOPE void TkMacOSXDebugFlashRegion( Drawable d, - RgnHandle rgn) + HIShapeRef rgn) { TkMacOSXInitNamedDebugSymbol(HIToolbox, int, QDDebugFlashRegion, CGrafPtr port, RgnHandle region); - if (d && rgn && QDDebugFlashRegion && !EmptyRgn(rgn)) { + CFShow(rgn); + if (d && rgn && QDDebugFlashRegion && !HIShapeIsEmpty(rgn)) { CGrafPtr port = TkMacOSXGetDrawablePort(d); if (port) { + static RgnHandle qdRgn = NULL; + + if (!qdRgn) { + qdRgn = NewRgn(); + } + ChkErr(HIShapeGetAsQDRgn, rgn, qdRgn); + /* * Carbon-internal region flashing SPI (c.f. Technote 2124) */ - QDDebugFlashRegion(port, rgn); + QDDebugFlashRegion(port, qdRgn); + SetEmptyRgn(qdRgn); } } } +#endif /* TK_MAC_DEBUG */ + +#include <mach-o/dyld.h> +#include <mach-o/nlist.h> /* *---------------------------------------------------------------------- @@ -511,7 +521,7 @@ TkMacOSXGetNamedDebugSymbol( if (!addr) { const struct mach_header *mh = NULL; uint32_t i, n = _dyld_image_count(); - size_t module_len; + size_t module_len = 0; if (module && *module) { module_len = strlen(module); @@ -606,5 +616,3 @@ TkMacOSXGetNamedDebugSymbol( #endif /* __LP64__ */ return addr; } - -#endif /* TK_MAC_DEBUG */ |