| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 323 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 334 while (!(line = m_lineReader.nextChunkAsUTF8StringWithLatin1Fallback()).
isNull()) { | 334 while (!(line = m_lineReader.nextChunkAsUTF8StringWithLatin1Fallback()).
isNull()) { |
| 335 endOfArchiveReached = (line == endOfDocumentBoundary); | 335 endOfArchiveReached = (line == endOfDocumentBoundary); |
| 336 if (checkBoundary && (line == endOfPartBoundary || endOfArchiveReach
ed)) { | 336 if (checkBoundary && (line == endOfPartBoundary || endOfArchiveReach
ed)) { |
| 337 endOfPartReached = true; | 337 endOfPartReached = true; |
| 338 break; | 338 break; |
| 339 } | 339 } |
| 340 // Note that we use line.utf8() and not line.ascii() as ascii turns
special characters (such as tab, line-feed...) into '?'. | 340 // Note that we use line.utf8() and not line.ascii() as ascii turns
special characters (such as tab, line-feed...) into '?'. |
| 341 content->append(line.utf8().data(), line.length()); | 341 content->append(line.utf8().data(), line.length()); |
| 342 if (contentTransferEncoding == MIMEHeader::QuotedPrintable) { | 342 if (contentTransferEncoding == MIMEHeader::QuotedPrintable) { |
| 343 // The line reader removes the \r\n, but we need them for the co
ntent in this case as the QuotedPrintable decoder expects CR-LF terminated lines
. | 343 // The line reader removes the \r\n, but we need them for the co
ntent in this case as the QuotedPrintable decoder expects CR-LF terminated lines
. |
| 344 content->append("\r\n", 2); | 344 content->append("\r\n", 2u); |
| 345 } | 345 } |
| 346 } | 346 } |
| 347 } | 347 } |
| 348 if (!endOfPartReached && checkBoundary) { | 348 if (!endOfPartReached && checkBoundary) { |
| 349 WTF_LOG_ERROR("No bounday found for MHTML part."); | 349 WTF_LOG_ERROR("No bounday found for MHTML part."); |
| 350 return nullptr; | 350 return nullptr; |
| 351 } | 351 } |
| 352 | 352 |
| 353 Vector<char> data; | 353 Vector<char> data; |
| 354 switch (contentTransferEncoding) { | 354 switch (contentTransferEncoding) { |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 415 if (!contentID.startsWith('<') || !contentID.endsWith('>')) | 415 if (!contentID.startsWith('<') || !contentID.endsWith('>')) |
| 416 return KURL(); | 416 return KURL(); |
| 417 | 417 |
| 418 StringBuilder uriBuilder; | 418 StringBuilder uriBuilder; |
| 419 uriBuilder.append("cid:"); | 419 uriBuilder.append("cid:"); |
| 420 uriBuilder.append(contentID, 1, contentID.length() - 2); | 420 uriBuilder.append(contentID, 1, contentID.length() - 2); |
| 421 return KURL(KURL(), uriBuilder.toString()); | 421 return KURL(KURL(), uriBuilder.toString()); |
| 422 } | 422 } |
| 423 | 423 |
| 424 } // namespace blink | 424 } // namespace blink |
| OLD | NEW |