Author: Alex Gaynor <[email protected]>
Branch: numpy-dtype-alt
Changeset: r46847:ceb4ec31ec83
Date: 2011-08-28 01:16 -0400
http://bitbucket.org/pypy/pypy/changeset/ceb4ec31ec83/
Log: merged upstream.
diff --git a/pypy/module/struct/formatiterator.py
b/pypy/module/struct/formatiterator.py
--- a/pypy/module/struct/formatiterator.py
+++ b/pypy/module/struct/formatiterator.py
@@ -154,13 +154,6 @@
self.inputpos = end
return s
- def get_pos_and_advance(self, count):
- pos = self.inputpos
- self.inputpos += count
- if self.inputpos > len(self.input):
- raise StructError("unpack str size too short for format")
- return pos
-
def appendobj(self, value):
self.result_w.append(self.space.wrap(value))
appendobj._annspecialcase_ = 'specialize:argtype(1)'
diff --git a/pypy/rlib/rstruct/standardfmttable.py
b/pypy/rlib/rstruct/standardfmttable.py
--- a/pypy/rlib/rstruct/standardfmttable.py
+++ b/pypy/rlib/rstruct/standardfmttable.py
@@ -198,8 +198,8 @@
@specialize.argtype(0)
def unpack_int(fmtiter):
intvalue = inttype(0)
- s = fmtiter.input
- idx = fmtiter.get_pos_and_advance(size)
+ s = fmtiter.read(size)
+ idx = 0
if fmtiter.bigendian:
for i in unroll_range_size:
x = ord(s[idx])
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit