Diff
Not logged in

Differences From Artifact [b9c85dc62a]:

To Artifact [12b4c2e88b]:


576
577
578
579
580
581
582
583
584
585

586
587
588
589
590
591
592
576
577
578
579
580
581
582



583
584
585
586
587
588
589
590







-
-
-
+







    end = src + length - 4;
    while (p < end) {
	p += TclUtfToUniChar(p, &ch);
	*w++ = ch;
    }
    end += 4;
    while (p < end) {
	if (((unsigned)(UCHAR(*p)-0x80)) < 0x20) {
	    ch = cp1252[UCHAR(*p++)-0x80];
	} else if (Tcl_UtfCharComplete(p, end-p)) {
	if (Tcl_UtfCharComplete(p, end-p)) {
	    p += TclUtfToUniChar(p, &ch);
	} else {
	    ch = UCHAR(*p++);
	}
	*w++ = ch;
    }
    *w = '\0';
630
631
632
633
634
635
636
637
638
639
640


641
642
643
644
645
646
647
628
629
630
631
632
633
634




635
636
637
638
639
640
641
642
643







-
-
-
-
+
+







    end = src + length - 4;
    while (p < end) {
	p += Tcl_UtfToUtf16(p, &ch);
	*w++ = ch;
    }
    end += 4;
    while (p < end) {
	if (((unsigned)(UCHAR(*p)-0x80)) < 0x20) {
	    ch = cp1252[UCHAR(*p++)-0x80];
	} else if (Tcl_UtfCharComplete(p, end-p)) {
		    p += TclUtfToWChar(p, &ch);
	if (Tcl_UtfCharComplete(p, end-p)) {
	    p += Tcl_UtfToUtf16(p, &ch);
	} else {
	    ch = UCHAR(*p++);
	}
	*w++ = ch;
    }
    *w = '\0';
    Tcl_DStringSetLength(dsPtr,