summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <jan.nijtmans@noemail.net>2015-11-10 13:57:41 (GMT)
committerjan.nijtmans <jan.nijtmans@noemail.net>2015-11-10 13:57:41 (GMT)
commit40cd1fea4dad9f20d2e2811a359d442edab3b8c4 (patch)
tree7985516348d53cef2b80c68b96ca778314a65ef9
parent8a58d6c14e47d12a4fedc9bc26caaf6117937377 (diff)
parent1d1974cb5c079da91175915112f332f6757b9f09 (diff)
downloadtk-40cd1fea4dad9f20d2e2811a359d442edab3b8c4.zip
tk-40cd1fea4dad9f20d2e2811a359d442edab3b8c4.tar.gz
tk-40cd1fea4dad9f20d2e2811a359d442edab3b8c4.tar.bz2
Fix [5ee8af61e5ef8e233158a43459624f4ecf58a6fe|5ee8af61e5] on Win64: Window embedding can not work on 64-bit Unix and Windows
FossilOrigin-Name: 1fd8abfd836b8cb54a5cd01ead9db82007d6114d
-rw-r--r--win/tkWinEmbed.c7
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;
}