master
cipher.update() can return null, checking for this prevents NullPointerExceptions Null is returned when all decrypted bytes are still in the buffer