Skip to content

Commit eaa80f1

Browse files
committed
Merge pull request #6 from itdaniher/master
bump with bdecode2, which does not error on extra bytes
1 parent cbed0f8 commit eaa80f1

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

Diff for: bencoder.pyx

+5-2
Original file line numberDiff line numberDiff line change
@@ -88,16 +88,19 @@ for func, keys in [
8888
decode_func[ord(key)] = func
8989

9090

91-
def bdecode(bytes x):
91+
def bdecode2(bytes x):
9292
try:
9393
r, l = decode_func[x[0]](x, 0)
9494
except (IndexError, KeyError, ValueError):
9595
raise BTFailure("not a valid bencoded string")
96+
return r, l
97+
98+
def bdecode(bytes x):
99+
r, l = bdecode2(x)
96100
if l != len(x):
97101
raise BTFailure("invalid bencoded value (data after valid prefix)")
98102
return r
99103

100-
101104
def encode(v, r):
102105
tp = type(v)
103106
if tp in encode_func:

0 commit comments

Comments
 (0)