Selaa lähdekoodia

Base32 decode lowercased characters as well

Tatsuhiro Tsujikawa 10 vuotta sitten
vanhempi
commit
d0b6a88f9c
2 muutettua tiedostoa jossa 5 lisäystä ja 0 poistoa
  1. 2 0
      src/base32.h
  2. 3 0
      test/Base32Test.cc

+ 2 - 0
src/base32.h

@@ -64,6 +64,8 @@ std::string decode(InputIterator first, InputIterator last)
       unsigned char value;
       if('A' <= ch && ch <= 'Z') {
         value = ch-'A';
+      } else if('a' <= ch && ch <= 'z') {
+        value = ch-'a';
       } else if('2' <= ch && ch <= '7') {
         value = ch-'2'+26;
       } else if(ch == '=') {

+ 3 - 0
test/Base32Test.cc

@@ -48,6 +48,9 @@ void Base32Test::testDecode()
   s = "GEZDGNBV";
   CPPUNIT_ASSERT_EQUAL(std::string("12345"),
                        base32::decode(s.begin(), s.end()));
+  s = "gezdgnbv";
+  CPPUNIT_ASSERT_EQUAL(std::string("12345"),
+                       base32::decode(s.begin(), s.end()));
 }
 
 } // namespace aria2