summaryrefslogtreecommitdiffstats
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)
commite1f916d469ab9cd121e46b22a73ee385e56140f8 (patch)
tree2e19a516c08dfef92ca282596e4174a5dc32daaf
parent012e0eb64e8ed4ffacb5a92a8946201ce45e5ac1 (diff)
downloadtk-e1f916d469ab9cd121e46b22a73ee385e56140f8.zip
tk-e1f916d469ab9cd121e46b22a73ee385e56140f8.tar.gz
tk-e1f916d469ab9cd121e46b22a73ee385e56140f8.tar.bz2
Fix [5ee8af61e5ef8e233158a43459624f4ecf58a6fe|5ee8af61e5] on Win64: Window embedding can not work on 64-bit Unix and Windows
-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;
}