Author: Matti Picus <matti.pi...@gmail.com> Branch: py3.6 Changeset: r97512:d9092e9cba63 Date: 2019-09-17 14:15 +0300 http://bitbucket.org/pypy/pypy/changeset/d9092e9cba63/
Log: merge default into py3.6 diff --git a/pypy/module/_rawffi/interp_rawffi.py b/pypy/module/_rawffi/interp_rawffi.py --- a/pypy/module/_rawffi/interp_rawffi.py +++ b/pypy/module/_rawffi/interp_rawffi.py @@ -245,7 +245,11 @@ except OSError as e: raise wrap_oserror(space, e) -@unwrap_spec(name='fsencode_or_none') +if _MS_WINDOWS: + name_spec = 'fsencode' +else: + name_spec = 'fsencode_or_none' +@unwrap_spec(name=name_spec) def descr_new_cdll(space, w_type, name): cdll = open_cdll(space, name) return W_CDLL(space, name, cdll) diff --git a/pypy/module/_rawffi/test/test__rawffi.py b/pypy/module/_rawffi/test/test__rawffi.py --- a/pypy/module/_rawffi/test/test__rawffi.py +++ b/pypy/module/_rawffi/test/test__rawffi.py @@ -262,14 +262,17 @@ raise AssertionError("did not fail??") def test_libload_None(self): - if self.iswin32: - skip("unix specific") import _rawffi # this should return *all* loaded libs, dlopen(NULL) - dll = _rawffi.CDLL(None) - func = dll.ptr('rand', [], 'i') - res = func() - assert res[0] != 0 + try: + dll = _rawffi.CDLL(None) + except TypeError: + if not self.iswin32: + raise + else: + func = dll.ptr('rand', [], 'i') + res = func() + assert res[0] != 0 def test_libc_load(self): import _rawffi diff --git a/pypy/objspace/std/unicodeobject.py b/pypy/objspace/std/unicodeobject.py --- a/pypy/objspace/std/unicodeobject.py +++ b/pypy/objspace/std/unicodeobject.py @@ -1235,9 +1235,11 @@ lgt -= 1 if right: - while rpos > lpos and rutf8.isspace(value, - rutf8.prev_codepoint_pos(value, rpos)): - rpos = rutf8.prev_codepoint_pos(value, rpos) + while rpos > lpos: + prev = rutf8.prev_codepoint_pos(value, rpos) + if not rutf8.isspace(value, prev): + break + rpos = prev lgt -= 1 assert rpos >= lpos # annotator hint, don't remove @@ -1258,9 +1260,11 @@ lgt -= 1 if right: - while rpos > lpos and rutf8.utf8_in_chars(value, - rutf8.prev_codepoint_pos(value, rpos), chars): - rpos = rutf8.prev_codepoint_pos(value, rpos) + while rpos > lpos: + prev = rutf8.prev_codepoint_pos(value, rpos) + if not rutf8.utf8_in_chars(value, prev, chars): + break + rpos = prev lgt -= 1 assert rpos >= lpos # annotator hint, don't remove _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit