Index: external/mit/xterm/dist/ptydata.c
===================================================================
RCS file: /cvsroot/xsrc/external/mit/xterm/dist/ptydata.c,v
retrieving revision 1.1.1.12
diff -p -u -r1.1.1.12 ptydata.c
--- external/mit/xterm/dist/ptydata.c	9 Mar 2025 23:17:11 -0000	1.1.1.12
+++ external/mit/xterm/dist/ptydata.c	4 Jul 2026 06:13:12 -0000
@@ -345,6 +345,12 @@ switchPtyData(TScreen *screen, int flag)
 	mk_wcwidth_init(screen->utf8_mode);
 
 	TRACE(("turning UTF-8 mode %s\n", BtoS(flag)));
+	if (flag) {
+	    saveCharsets(screen, screen->ansi_save_gsets);
+	    resetCharsets(screen);
+	} else {
+	    restoreCharsets(screen, screen->ansi_save_gsets);
+	}
 	update_font_utf8_mode();
     }
 }
@@ -654,6 +660,25 @@ Panic(const char *s, int a)
 }
 
 #if OPT_WIDE_CHARS
+void
+saveCharsets(TScreen *screen, DECNRCM_codes * target)
+{
+    (void) screen;
+    (void) target;
+}
+ 
+void
+restoreCharsets(TScreen *screen, const DECNRCM_codes * target)
+{
+    (void) screen;
+    (void) target;
+}
+
+void
+resetCharsets(TScreen *screen)
+{
+    (void) screen;
+}
 
 #ifdef ALLOWLOGGING
 void
Index: external/mit/xterm/dist/ptyx.h
===================================================================
RCS file: /cvsroot/xsrc/external/mit/xterm/dist/ptyx.h,v
retrieving revision 1.22
diff -p -u -r1.22 ptyx.h
--- external/mit/xterm/dist/ptyx.h	9 Mar 2025 23:18:48 -0000	1.22
+++ external/mit/xterm/dist/ptyx.h	4 Jul 2026 06:13:12 -0000
@@ -2917,6 +2917,9 @@ typedef struct {
 	Char		vt52_save_curss;
 	DECNRCM_codes	vt52_save_gsets[NUM_GSETS2];
 #endif
+#if OPT_WIDE_CHARS
+	DECNRCM_codes	ansi_save_gsets[NUM_GSETS2];
+#endif
 	/* Testing */
 #if OPT_XMC_GLITCH
 	unsigned	xmc_glitch;	/* # of spaces to pad on SGR's	*/
