From c3574e6a659de1cae335c79d81865b60f67aea49 Mon Sep 17 00:00:00 2001 From: patthoyts Date: Sat, 26 Jul 2008 11:17:23 +0000 Subject: bug #2026405: Check for 0x prefix in sprintf %p and redo if necessary. Works around cygwin issue. --- ChangeLog | 4 ++++ win/tkWinWindow.c | 5 ++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index afcbf80..20e58f9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2008-07-26 Pat Thoyts + + * win/tkWinWindow.c: Check for 0x prefix in sprintf %p. Bug [2026405] + 2007-02-24 Jan Nijtmans * generic/*.c: fix [2021443] inconsistant "wrong # args" messages diff --git a/win/tkWinWindow.c b/win/tkWinWindow.c index 1c2745c..95e7a16 100644 --- a/win/tkWinWindow.c +++ b/win/tkWinWindow.c @@ -9,7 +9,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkWinWindow.c,v 1.16 2008/04/27 22:39:17 dkf Exp $ + * RCS: @(#) $Id: tkWinWindow.c,v 1.17 2008/07/26 11:17:25 patthoyts Exp $ */ #include "tkWinInt.h" @@ -174,9 +174,12 @@ TkpPrintWindowId( /* * Use pointer representation, because Win64 is P64 (*not* LP64). Windows * doesn't print the 0x for %p, so we do it. + * bug #2026405: cygwin does output 0x for %p so test and recover. */ sprintf(buf, "0x%p", hwnd); + if (buf[2] == '0' && buf[3] == 'x') + sprintf(buf, "%p", hwnd); } /* -- cgit v0.12