summaryrefslogtreecommitdiffstats
path: root/win/tkWinEmbed.c
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2015-11-10 13:54:09 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2015-11-10 13:54:09 (GMT)
commit2a9fdd77c974171312d269dead962e6dcfc0ab21 (patch)
tree2e19a516c08dfef92ca282596e4174a5dc32daaf /win/tkWinEmbed.c
parent86d9383e5ac170ca8a034085bb778f6fd96b7755 (diff)
downloadtk-2a9fdd77c974171312d269dead962e6dcfc0ab21.zip
tk-2a9fdd77c974171312d269dead962e6dcfc0ab21.tar.gz
tk-2a9fdd77c974171312d269dead962e6dcfc0ab21.tar.bz2
Fix [5ee8af61e5ef8e233158a43459624f4ecf58a6fe|5ee8af61e5] on Win64: Window embedding can not work on 64-bit Unix and Windows
Diffstat (limited to 'win/tkWinEmbed.c')
-rw-r--r--win/tkWinEmbed.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/win/tkWinEmbed.c b/win/tkWinEmbed.c
index b7f5085..a0670cc 100644
--- a/win/tkWinEmbed.c
+++ b/win/tkWinEmbed.c
@@ -256,10 +256,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;
}