job.bucketFactory);
else {
job.getCodec().realEncode(job.dataBlocks, job.checkBlocks, job.blockLength, job.bucketFactory);
if ((job.dataBlockStatus != null) || (job.checkBlockStatus != null)) {
for (int i = 0; i < job.dataBlocks.length; i++) {
<BUG>if(!job.dataBlockStatus[i].trySetData(job.dataBlocks[i])) {

job.dataBlocks[i].free();</BUG>
job.dataBlocks[i] = null;
}

job.bucketFactory);
else {
job.getCodec().realEncode(job.dataBlocks, job.checkBlocks, job.blockLength, job.bucketFactory);
if ((job.dataBlockStatus != null) || (job.checkBlockStatus != null)) {
for (int i = 0; i < job.dataBlocks.length; i++) {
Bucket existingData = job.dataBlockStatus[i].trySetData(job.dataBlocks[i]);
if(existingData != null && existingData != job.dataBlocks[i]) {
job.dataBlocks[i].free();
job.dataBlocks[i] = null;
