diff options
author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2015-11-10 13:57:41 (GMT) |
---|---|---|
committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2015-11-10 13:57:41 (GMT) |
commit | 7b12057b26fb9c39fde8f20dbe0cb3eb40df746f (patch) | |
tree | 7985516348d53cef2b80c68b96ca778314a65ef9 /win | |
parent | e450bb2502ab019788b0d6a85ba30cb3f947a81b (diff) | |
parent | 2a9fdd77c974171312d269dead962e6dcfc0ab21 (diff) | |
download | tk-7b12057b26fb9c39fde8f20dbe0cb3eb40df746f.zip tk-7b12057b26fb9c39fde8f20dbe0cb3eb40df746f.tar.gz tk-7b12057b26fb9c39fde8f20dbe0cb3eb40df746f.tar.bz2 |
Fix [5ee8af61e5ef8e233158a43459624f4ecf58a6fe|5ee8af61e5] on Win64: Window embedding can not work on 64-bit Unix and Windows
Diffstat (limited to 'win')
-rw-r--r-- | win/tkWinEmbed.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/win/tkWinEmbed.c b/win/tkWinEmbed.c index 42809cc..8bfd295 100644 --- a/win/tkWinEmbed.c +++ b/win/tkWinEmbed.c @@ -257,10 +257,13 @@ TkpUseWindow( return TCL_OK; } - if (Tcl_GetInt(interp, string, &id) != TCL_OK) { + if ( +#ifdef _WIN64 + (sscanf(string, "0x%p", &hwnd) != 1) && +#endif + Tcl_GetInt(interp, string, (int *) &hwnd) != TCL_OK) { return TCL_ERROR; } - hwnd = (HWND) INT2PTR(id); if ((HWND)winPtr->privatePtr == hwnd) { return TCL_OK; } |