Diff

Differences From Artifact [15d3e2419e]:

To Artifact [6395811591]:


8
9
10
11
12
13
14
15
16










17
18
19
20
21



22
23
24
8
9
10
11
12
13
14


15
16
17
18
19
20
21
22
23
24
25
26
27
28

29
30
31
32
33
34







-
-
+
+
+
+
+
+
+
+
+
+




-
+
+
+



-	    ((Tcl_Obj **) objv) += (async + 3);
+	    objv += (async + 3);
 
             /*
 	     * See if the target interpreter is local.  If so, execute
diff -uNr tcl8.4.19.orig/win/tclWinReg.c tcl8.4.19-1rsk/win/tclWinReg.c
--- tcl8.4.19.orig/win/tclWinReg.c	2007-05-15 11:08:22.000000000 -0500
+++ tcl8.4.19-1rsk/win/tclWinReg.c	2010-10-12 10:40:20.000000000 -0500
@@ -790,7 +790,7 @@
+++ tcl8.4.19-1rsk/win/tclWinReg.c	2010-10-13 02:03:11.000000000 -0500
@@ -776,6 +776,7 @@
     } else if (type == REG_MULTI_SZ) {
 	char *p = Tcl_DStringValue(&data);
 	char *end = Tcl_DStringValue(&data) + length;
+        Tcl_UniChar *p_uc;
 
 	/*
 	 * Multistrings are stored as an array of null-terminated strings,
@@ -790,7 +791,9 @@
 		    Tcl_NewStringObj(Tcl_DStringValue(&buf),
 			    Tcl_DStringLength(&buf)));
 	    if (regWinProcs->useWide) {
-		while (*((Tcl_UniChar *)p)++ != 0) {}
+		while ((*((Tcl_UniChar *)p))++ != 0) {}
+                p_uc = (Tcl_UniChar *) p;
+		while (*p_uc++ != '\0') {}
+                p = (char *) p_uc;
 	    } else {
 		while (*p++ != '\0') {}
 	    }