Posted to tcl by emiliano at Thu Apr 24 21:16:57 GMT 2025view pretty

Index: win/tkWinGDI.c
==================================================================
--- win/tkWinGDI.c
+++ win/tkWinGDI.c
@@ -3653,16 +3653,13 @@
     /*
      * Store print properties and link variables so they can be accessed from
      * script level.
      */
     if (localPrinterName != NULL) {
-	char* varlink1 = (char*)ckalloc(100 * sizeof(char));
-	char** varlink2 = (char**)ckalloc(sizeof(char*));
-	*varlink2 = varlink1;
-	WideCharToMultiByte(CP_UTF8, 0, localPrinterName, -1, varlink1, 0, NULL, NULL);
+	static char varlink[] = {'\0'};
 
-	Tcl_LinkVar(interp, "::tk::print::printer_name", varlink2,
+	Tcl_LinkVar(interp, "::tk::print::printer_name", varlink,
 	    TCL_LINK_STRING | TCL_LINK_READ_ONLY);
 	Tcl_LinkVar(interp, "::tk::print::copies", &copies,
 	    TCL_LINK_INT | TCL_LINK_READ_ONLY);
 	Tcl_LinkVar(interp, "::tk::print::dpi_x", &dpi_x,
 	    TCL_LINK_INT | TCL_LINK_READ_ONLY);