title: Error decoding incorrect paddling with decode64, with padding present?
body: <p>With the code that I am using, every time there is a <code>"?</code>" on data of the encoded message I get an error back <code>"Incorrect Padding"</code>. When using a decoder online I get the correct value for both <code>value1</code> and <code>value2</code> below, but for <code>value2</code> where there should be a <code>"?"</code> I get an exception instead.</p>
  
  <p>The code is:</p>
  
  <pre><code>value1 = "Y29udGludWENCg=="
  expected1 = b'continua\r\n'
  value2 = "Y29udGludWE_DQo="
  expected2 = b'continua?\r\n'
  
  data1 = base64.b64decode(value1)
  assert data1 == expected1
  data2 = base64.b64decode(value2)
  assert data2 == expected2
  </code></pre>
  
  <p>Decoding <code>value2</code> throws a <code>binascii.Error: Incorrect padding</code> exception, but the data has the right amount of padding (the length of <code>value2</code> is a multiple of 4).</p>