1 files changed, 7 insertions, 11 deletions
diff --git a/crypto/src/bcpg/BcpgInputStream.cs b/crypto/src/bcpg/BcpgInputStream.cs
index 3c69fbdf5..2e08cd090 100644
--- a/crypto/src/bcpg/BcpgInputStream.cs
+++ b/crypto/src/bcpg/BcpgInputStream.cs
@@ -105,19 +105,15 @@ namespace Org.BouncyCastle.Bcpg
next = true;
}
- if (nextB >= 0)
+ if (nextB < 0)
+ return (PacketTag)nextB;
+
+ int maskB = nextB & 0x3f;
+ if ((nextB & 0x40) == 0) // old
{
- if ((nextB & 0x40) != 0) // new
- {
- return (PacketTag)(nextB & 0x3f);
- }
- else // old
- {
- return (PacketTag)((nextB & 0x3f) >> 2);
- }
+ maskB >>= 2;
}
-
- return (PacketTag) nextB;
+ return (PacketTag)maskB;
}
public Packet ReadPacket()
|