From 04d547e397b9bccb40958dd7643b2aef1c8e9063 Mon Sep 17 00:00:00 2001 From: Hye-Shik Chang Date: Mon, 5 Jun 2006 01:09:46 +0000 Subject: [PATCH] (Backport from trunk) Fix a potentially invalid memory access of CJKCodecs' shift-jis decoder. --- Misc/NEWS | 2 ++ Modules/cjkcodecs/_codecs_jp.c | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Misc/NEWS b/Misc/NEWS index e9b9b114c29f..3171e036593f 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -17,6 +17,8 @@ Core and builtins Extension Modules ----------------- +- Fixed a potentially invalid memory access of CJKCodecs' shift-jis decoder. + - Calling Tk_Init twice is refused if the first call failed as that may deadlock. diff --git a/Modules/cjkcodecs/_codecs_jp.c b/Modules/cjkcodecs/_codecs_jp.c index 860a979f87d8..72b4db0b2341 100644 --- a/Modules/cjkcodecs/_codecs_jp.c +++ b/Modules/cjkcodecs/_codecs_jp.c @@ -640,10 +640,11 @@ DECODER(shift_jis_2004) REQUIRE_OUTBUF(1) JISX0201_DECODE(c, **outbuf) else if ((c >= 0x81 && c <= 0x9f) || (c >= 0xe0 && c <= 0xfc)){ - unsigned char c1, c2 = IN2; + unsigned char c1, c2; ucs4_t code; REQUIRE_INBUF(2) + c2 = IN2; if (c2 < 0x40 || (c2 > 0x7e && c2 < 0x80) || c2 > 0xfc) return 2; -- 2.47.3