I grabbed from CVS at 5:00am this morning PST. I am using the Base64
encoder and I now get slightly different results than previously. Has
ArraySink::TotalPutLength() changed to fix a bug in how it operated before
(in which case I am using it incorrectly). It used to return the actual
encoded size. Now it returns (in the case I asserted on) the size+1.
pBase64Data = new unsigned char[nEncodedSize];
ArraySink* pSink = (ArraySink*) new ArraySink( pBase64Data,
nEncodedSize );
StringSource s( pIn, nInBytes, TRUE, new Base64Encoder(pSink,
FALSE) );
assert( pSink->TotalPutLength()==(unsigned int)nEncodedSize );
In this example, nEncodedSize=16, nInBytes=12 and TotalPutLength() returns
17. pSink->size=16, and pSink->total=17. Is this now correct or is this a
bug? If the former, what should I be using instead of TotalPutLength()?
thanks.
Michael Hunley
Senior Engineer
PocketPurchase, Inc.
- Re: Possible new bug in latest from CVS (5.1) Michael Hunley
