fixed doOutput to revert properly when N and S not specified.
@@ -75,6 +75,8 @@ private void diffPadAndAbsorb()
}
public int doOutput(byte[] out, int outOff, int outLen)
+ {
+ if (diff != null)
{
if (!squeezing)
{
@@ -85,6 +87,11 @@ public int doOutput(byte[] out, int outOff, int outLen)
return outLen;
}
+ else
+ {
+ return super.doOutput(out, outOff, outLen);
+ }
+ }
public void reset()
{
