Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(285)

Side by Side Diff: third_party/WebKit/Source/core/frame/FrameSerializer.cpp

Issue 2810073002: Blink Rename follow-up: URLs --big-rename--> _ur_ls --this-fix--> _urls. (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 332 matching lines...) Expand 10 before | Expand all | Expand 10 after
343 } 343 }
344 } 344 }
345 345
346 void FrameSerializer::SerializeCSSStyleSheet(CSSStyleSheet& style_sheet, 346 void FrameSerializer::SerializeCSSStyleSheet(CSSStyleSheet& style_sheet,
347 const KURL& url) { 347 const KURL& url) {
348 // If the URL is invalid or if it is a data URL this means that this CSS is 348 // If the URL is invalid or if it is a data URL this means that this CSS is
349 // defined inline, respectively in a <style> tag or in the data URL itself. 349 // defined inline, respectively in a <style> tag or in the data URL itself.
350 bool is_inline_css = !url.IsValid() || url.ProtocolIsData(); 350 bool is_inline_css = !url.IsValid() || url.ProtocolIsData();
351 // If this CSS is not inline then it is identifiable by its URL. So just skip 351 // If this CSS is not inline then it is identifiable by its URL. So just skip
352 // it if it has already been analyzed before. 352 // it if it has already been analyzed before.
353 if (!is_inline_css && (resource_ur_ls_.Contains(url) || 353 if (!is_inline_css && (resource_urls_.Contains(url) ||
354 delegate_.ShouldSkipResourceWithURL(url))) { 354 delegate_.ShouldSkipResourceWithURL(url))) {
355 return; 355 return;
356 } 356 }
357 357
358 TRACE_EVENT2("page-serialization", "FrameSerializer::serializeCSSStyleSheet", 358 TRACE_EVENT2("page-serialization", "FrameSerializer::serializeCSSStyleSheet",
359 "type", "CSS", "url", url.ElidedString().Utf8().Data()); 359 "type", "CSS", "url", url.ElidedString().Utf8().Data());
360 // Only report UMA metric if this is not a reentrant CSS serialization call. 360 // Only report UMA metric if this is not a reentrant CSS serialization call.
361 double css_start_time = 0; 361 double css_start_time = 0;
362 if (!is_serializing_css_) { 362 if (!is_serializing_css_) {
363 is_serializing_css_ = true; 363 is_serializing_css_ = true;
(...skipping 19 matching lines...) Expand all
383 } 383 }
384 384
385 WTF::TextEncoding text_encoding(style_sheet.Contents()->Charset()); 385 WTF::TextEncoding text_encoding(style_sheet.Contents()->Charset());
386 ASSERT(text_encoding.IsValid()); 386 ASSERT(text_encoding.IsValid());
387 String text_string = css_text.ToString(); 387 String text_string = css_text.ToString();
388 CString text = text_encoding.Encode( 388 CString text = text_encoding.Encode(
389 text_string, WTF::kCSSEncodedEntitiesForUnencodables); 389 text_string, WTF::kCSSEncodedEntitiesForUnencodables);
390 resources_->push_back( 390 resources_->push_back(
391 SerializedResource(url, String("text/css"), 391 SerializedResource(url, String("text/css"),
392 SharedBuffer::Create(text.Data(), text.length()))); 392 SharedBuffer::Create(text.Data(), text.length())));
393 resource_ur_ls_.insert(url); 393 resource_urls_.insert(url);
394 } 394 }
395 395
396 // Sub resources need to be serialized even if the CSS definition doesn't 396 // Sub resources need to be serialized even if the CSS definition doesn't
397 // need to be. 397 // need to be.
398 for (unsigned i = 0; i < style_sheet.length(); ++i) 398 for (unsigned i = 0; i < style_sheet.length(); ++i)
399 SerializeCSSRule(style_sheet.item(i)); 399 SerializeCSSRule(style_sheet.item(i));
400 400
401 if (css_start_time != 0) { 401 if (css_start_time != 0) {
402 is_serializing_css_ = false; 402 is_serializing_css_ = false;
403 DEFINE_STATIC_LOCAL(CustomCountHistogram, css_histogram, 403 DEFINE_STATIC_LOCAL(CustomCountHistogram, css_histogram,
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
448 case CSSRule::kPageRule: 448 case CSSRule::kPageRule:
449 case CSSRule::kKeyframesRule: 449 case CSSRule::kKeyframesRule:
450 case CSSRule::kKeyframeRule: 450 case CSSRule::kKeyframeRule:
451 case CSSRule::kNamespaceRule: 451 case CSSRule::kNamespaceRule:
452 case CSSRule::kViewportRule: 452 case CSSRule::kViewportRule:
453 break; 453 break;
454 } 454 }
455 } 455 }
456 456
457 bool FrameSerializer::ShouldAddURL(const KURL& url) { 457 bool FrameSerializer::ShouldAddURL(const KURL& url) {
458 return url.IsValid() && !resource_ur_ls_.Contains(url) && 458 return url.IsValid() && !resource_urls_.Contains(url) &&
459 !url.ProtocolIsData() && !delegate_.ShouldSkipResourceWithURL(url); 459 !url.ProtocolIsData() && !delegate_.ShouldSkipResourceWithURL(url);
460 } 460 }
461 461
462 void FrameSerializer::AddToResources( 462 void FrameSerializer::AddToResources(
463 const String& mime_type, 463 const String& mime_type,
464 ResourceHasCacheControlNoStoreHeader has_cache_control_no_store_header, 464 ResourceHasCacheControlNoStoreHeader has_cache_control_no_store_header,
465 PassRefPtr<const SharedBuffer> data, 465 PassRefPtr<const SharedBuffer> data,
466 const KURL& url) { 466 const KURL& url) {
467 if (delegate_.ShouldSkipResource(has_cache_control_no_store_header)) 467 if (delegate_.ShouldSkipResource(has_cache_control_no_store_header))
468 return; 468 return;
469 469
470 if (!data) { 470 if (!data) {
471 DLOG(ERROR) << "No data for resource " << url.GetString(); 471 DLOG(ERROR) << "No data for resource " << url.GetString();
472 return; 472 return;
473 } 473 }
474 474
475 resources_->push_back(SerializedResource(url, mime_type, std::move(data))); 475 resources_->push_back(SerializedResource(url, mime_type, std::move(data)));
476 resource_ur_ls_.insert(url); 476 resource_urls_.insert(url);
477 } 477 }
478 478
479 void FrameSerializer::AddImageToResources(ImageResourceContent* image, 479 void FrameSerializer::AddImageToResources(ImageResourceContent* image,
480 const KURL& url) { 480 const KURL& url) {
481 if (!image || !image->HasImage() || image->ErrorOccurred() || 481 if (!image || !image->HasImage() || image->ErrorOccurred() ||
482 !ShouldAddURL(url)) 482 !ShouldAddURL(url))
483 return; 483 return;
484 484
485 TRACE_EVENT2("page-serialization", "FrameSerializer::addImageToResources", 485 TRACE_EVENT2("page-serialization", "FrameSerializer::addImageToResources",
486 "type", "image", "url", url.ElidedString().Utf8().Data()); 486 "type", "image", "url", url.ElidedString().Utf8().Data());
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
579 emits_minus = ch == '-'; 579 emits_minus = ch == '-';
580 builder.Append(ch); 580 builder.Append(ch);
581 } 581 }
582 CString escaped_url = builder.ToString().Ascii(); 582 CString escaped_url = builder.ToString().Ascii();
583 return String::Format("saved from url=(%04d)%s", 583 return String::Format("saved from url=(%04d)%s",
584 static_cast<int>(escaped_url.length()), 584 static_cast<int>(escaped_url.length()),
585 escaped_url.Data()); 585 escaped_url.Data());
586 } 586 }
587 587
588 } // namespace blink 588 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/frame/FrameSerializer.h ('k') | third_party/WebKit/Source/core/html/HTMLAnchorElement.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698