First reported by Pachoo pachoo@gmail.com on May 23, 2012
---
It looks like there is a bug in the AMF3 classes writeList() and
writeDict() functions when calculating the U29A-value value.
From the AMF3 specs section 3.11:
U29A-value
=
U29
; The first (low) bit is a flag with
; value 1. The remaining 1 to 28
; significant bits are used to encode the
; count of the dense portion of the
; Array.
assoc-value
=
UTF-8-vr value-type
array-type
=
array-marker (U29O-ref | (U29A-value (UTF-8-empty | *(assoc-value)
UTF-8-empty) *(value-type)))
The way this value is written in the code is:
self.data.write_u29((len(data) << 1) & 0x01)
According to the specs it seems like that '&' should be an '|'
Original issue reported on code.google.com by theinten...@gmail.com on 29 Jun 2012 at 9:40
Original issue reported on code.google.com by
theinten...@gmail.com
on 29 Jun 2012 at 9:40