Author: Armin Rigo <ar...@tunes.org> Branch: Changeset: r46146:368b4ab4862f Date: 2011-07-31 18:37 +0200 http://bitbucket.org/pypy/pypy/changeset/368b4ab4862f/
Log: Test and fix for reset(). diff --git a/pypy/module/_multibytecodec/interp_incremental.py b/pypy/module/_multibytecodec/interp_incremental.py --- a/pypy/module/_multibytecodec/interp_incremental.py +++ b/pypy/module/_multibytecodec/interp_incremental.py @@ -28,8 +28,8 @@ def _free(self): self.pending = None if self.decodebuf: - pypy_cjk_dec_free(self.decodebuf) - self.decodebuf = lltype.nullptr(DECODEBUF_P.TO) + c_codecs.pypy_cjk_dec_free(self.decodebuf) + self.decodebuf = lltype.nullptr(c_codecs.DECODEBUF_P.TO) def __del__(self): self._free() diff --git a/pypy/module/_multibytecodec/test/test_app_incremental.py b/pypy/module/_multibytecodec/test/test_app_incremental.py --- a/pypy/module/_multibytecodec/test/test_app_incremental.py +++ b/pypy/module/_multibytecodec/test/test_app_incremental.py @@ -49,3 +49,17 @@ assert r == u'' raises(UnicodeDecodeError, d.decode, "~", True) raises(UnicodeDecodeError, d.decode, "~{a", True) + + def test_decode_hz_reset(self): + d = self.IncrementalHzDecoder() + r = d.decode("ab") + assert r == u'ab' + r = d.decode("~{") + assert r == u'' + r = d.decode("ab") + assert r == u'\u5f95' + r = d.decode("ab") + assert r == u'\u5f95' + d.reset() + r = d.decode("ab") + assert r == u'ab' _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit