Przeglądaj źródła

LibWeb: Process Base64 data URLs with the forgiving Base64 algorithm

Timothy Flynn 1 rok temu
rodzic
commit
74377618b1

+ 2 - 3
Userland/Libraries/LibWeb/Fetch/Infrastructure/URL.cpp

@@ -6,9 +6,9 @@
  * SPDX-License-Identifier: BSD-2-Clause
  * SPDX-License-Identifier: BSD-2-Clause
  */
  */
 
 
-#include <AK/Base64.h>
 #include <LibURL/URL.h>
 #include <LibURL/URL.h>
 #include <LibWeb/Fetch/Infrastructure/URL.h>
 #include <LibWeb/Fetch/Infrastructure/URL.h>
+#include <Userland/Libraries/LibWeb/Infra/Base64.h>
 
 
 namespace Web::Fetch::Infrastructure {
 namespace Web::Fetch::Infrastructure {
 
 
@@ -77,9 +77,8 @@ ErrorOr<DataURL> process_data_url(URL::URL const& data_url)
             auto string_body = StringView(body);
             auto string_body = StringView(body);
 
 
             // 2. Set body to the forgiving-base64 decode of stringBody.
             // 2. Set body to the forgiving-base64 decode of stringBody.
-            //    FIXME: Check if it's really forgiving.
             // 3. If body is failure, then return failure.
             // 3. If body is failure, then return failure.
-            body = TRY(decode_base64(string_body));
+            body = TRY(Infra::decode_forgiving_base64(string_body));
 
 
             // 4. Remove the last 6 code points from mimeType.
             // 4. Remove the last 6 code points from mimeType.
             // 5. Remove trailing U+0020 SPACE code points from mimeType, if any.
             // 5. Remove trailing U+0020 SPACE code points from mimeType, if any.