소스 검색

LibPDF: Handle pdf-specific white spaces correctly in ASCII85

We were previously only looking the space character but PDF white
spaces is a superset of ascii spaces.
Lucas CHOLLET 1 년 전
부모
커밋
2fe0647c68
1개의 변경된 파일4개의 추가작업 그리고 3개의 파일을 삭제
  1. 4 3
      Userland/Libraries/LibPDF/Filter.cpp

+ 4 - 3
Userland/Libraries/LibPDF/Filter.cpp

@@ -11,6 +11,7 @@
 #include <LibGfx/ImageFormats/JPEGLoader.h>
 #include <LibPDF/CommonNames.h>
 #include <LibPDF/Filter.h>
+#include <LibPDF/Reader.h>
 
 namespace PDF {
 
@@ -99,7 +100,7 @@ PDFErrorOr<ByteBuffer> Filter::decode_ascii85(ReadonlyBytes bytes)
     size_t byte_index = 0;
 
     while (byte_index < bytes.size()) {
-        if (bytes[byte_index] == ' ') {
+        if (Reader::is_whitespace(bytes[byte_index])) {
             byte_index++;
             continue;
         }
@@ -117,7 +118,7 @@ PDFErrorOr<ByteBuffer> Filter::decode_ascii85(ReadonlyBytes bytes)
             auto to_write = bytes.size() - byte_index;
             for (int i = 0; i < 5; i++) {
                 auto byte = byte_index >= bytes.size() ? 'u' : bytes[byte_index++];
-                if (byte == ' ') {
+                if (Reader::is_whitespace(byte)) {
                     i--;
                     continue;
                 }
@@ -131,7 +132,7 @@ PDFErrorOr<ByteBuffer> Filter::decode_ascii85(ReadonlyBytes bytes)
         } else {
             for (int i = 0; i < 5; i++) {
                 auto byte = bytes[byte_index++];
-                if (byte == ' ') {
+                if (Reader::is_whitespace(byte)) {
                     i--;
                     continue;
                 }