Posted to tcl by fvogel at Thu Apr 24 20:56:46 GMT 2025view raw
- Index: win/tkWinGDI.c
- ==================================================================
- --- win/tkWinGDI.c
- +++ win/tkWinGDI.c
- @@ -3645,12 +3645,13 @@
- * script level.
- */
- if (localPrinterName != NULL) {
- char* varlink1 = (char*)ckalloc(100 * sizeof(char));
- char** varlink2 = (char**)ckalloc(sizeof(char*));
- + int size_needed = WideCharToMultiByte(CP_UTF8, 0, localPrinterName, -1, NULL, 0, NULL, NULL);
- *varlink2 = varlink1;
- - WideCharToMultiByte(CP_UTF8, 0, localPrinterName, -1, varlink1, 0, NULL, NULL);
- + WideCharToMultiByte(CP_UTF8, 0, localPrinterName, -1, varlink1, size_needed, NULL, NULL);
- Tcl_LinkVar(interp, "::tk::print::printer_name", varlink2,
- TCL_LINK_STRING | TCL_LINK_READ_ONLY);
- Tcl_LinkVar(interp, "::tk::print::copies", &copies,
- TCL_LINK_INT | TCL_LINK_READ_ONLY);
Add a comment