It is a strange place I live in. Without changing any code, the below test passed:
testFECDamagedEncodeAndDecodeRS_15_9
| chunk decodedBytes proxy decoder encoder encodedByteFrame | chunk := self buildChunk: 8.
decoder := FECDecoder new. encoder := FECEncoder new. proxy := decoder, encoder. proxy asProtocolStack.
encodedByteFrame := encoder encodeFrame: (Frame onPayload: chunk). 1 timesRepeat: [encodedByteFrame payload at: encodedByteFrame payload size atRandom put: 255 atRandom]. decodedBytes := (decoder decodeFrame: encodedByteFrame) payload.
self assert: chunk equals: decodedBytes.
bless, robert
On 12/18/2015 03:46 PM, tim Rowledge wrote:
On 18-12-2015, at 12:15 PM, Robert Withers robert.w.withers@gmail.com wrote: I would dearly love to not have platform code, come to think of it.
Then don’t have any. It’s all capable of doing that. See Squeak3D for example. The slang code in B3DEnginePlugin and its subclasses implements a lot of stuff and all the C code is in platforms/Cross/plugins/Squeak3D No platform specific code.
tim
tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Oxymorons: Clearly misunderstood