This commit is contained in:
Dylan K. Taylor 2023-03-02 17:25:48 +00:00
parent 4692552fdc
commit e15e53859f
No known key found for this signature in database
GPG Key ID: 8927471A91CAFD3D

View File

@ -202,8 +202,7 @@ class Block{
*/ */
final public function decodeTypeData(int $data) : void{ final public function decodeTypeData(int $data) : void{
$typeBits = $this->getRequiredTypeDataBits(); $typeBits = $this->getRequiredTypeDataBits();
$givenBits = $typeBits; $reader = new RuntimeDataReader($typeBits, $data);
$reader = new RuntimeDataReader($givenBits, $data);
$this->describeType($reader); $this->describeType($reader);
$readBits = $reader->getOffset(); $readBits = $reader->getOffset();
@ -218,8 +217,7 @@ class Block{
final public function decodeStateData(int $data) : void{ final public function decodeStateData(int $data) : void{
$typeBits = $this->getRequiredTypeDataBits(); $typeBits = $this->getRequiredTypeDataBits();
$stateBits = $this->getRequiredStateDataBits(); $stateBits = $this->getRequiredStateDataBits();
$givenBits = $typeBits + $stateBits; $reader = new RuntimeDataReader($typeBits + $stateBits, $data);
$reader = new RuntimeDataReader($givenBits, $data);
$this->decodeTypeData($reader->readInt($typeBits)); $this->decodeTypeData($reader->readInt($typeBits));
$this->describeState($reader); $this->describeState($reader);
@ -234,8 +232,7 @@ class Block{
*/ */
final public function computeTypeData() : int{ final public function computeTypeData() : int{
$typeBits = $this->getRequiredTypeDataBits(); $typeBits = $this->getRequiredTypeDataBits();
$requiredBits = $typeBits; $writer = new RuntimeDataWriter($typeBits);
$writer = new RuntimeDataWriter($requiredBits);
$this->describeType($writer); $this->describeType($writer);
$writtenBits = $writer->getOffset(); $writtenBits = $writer->getOffset();
@ -252,8 +249,7 @@ class Block{
final public function computeStateData() : int{ final public function computeStateData() : int{
$typeBits = $this->getRequiredTypeDataBits(); $typeBits = $this->getRequiredTypeDataBits();
$stateBits = $this->getRequiredStateDataBits(); $stateBits = $this->getRequiredStateDataBits();
$requiredBits = $typeBits + $stateBits; $writer = new RuntimeDataWriter($typeBits + $stateBits);
$writer = new RuntimeDataWriter($requiredBits);
$writer->writeInt($typeBits, $this->computeTypeData()); $writer->writeInt($typeBits, $this->computeTypeData());
$this->describeState($writer); $this->describeState($writer);