From eca36f26ad3765fdaf954735bd5744e2a16154f1 Mon Sep 17 00:00:00 2001 From: Zeno Albisser Date: Tue, 29 Oct 2013 12:15:29 +0100 Subject: Do not forward declare UIResourceRequest, Identity and IdentityKey. Clang / libc++ does not support incomplete types in templates. See: http://clang.llvm.org/compatibility.html#undep_incomplete This patch will be squashed into the next chromium update. Change-Id: I46131d53494007548444bc4d158c2208a012ece4 Reviewed-by: Andras Becsi --- chromium/cc/trees/layer_tree_impl.h | 2 +- .../browser/media/webrtc_identity_store_backend.cc | 37 ------------------- .../browser/media/webrtc_identity_store_backend.h | 42 ++++++++++++++++++++-- 3 files changed, 40 insertions(+), 41 deletions(-) diff --git a/chromium/cc/trees/layer_tree_impl.h b/chromium/cc/trees/layer_tree_impl.h index 7e66da8b04e..4f1afbe3cc7 100644 --- a/chromium/cc/trees/layer_tree_impl.h +++ b/chromium/cc/trees/layer_tree_impl.h @@ -12,6 +12,7 @@ #include "base/containers/hash_tables.h" #include "base/values.h" #include "cc/layers/layer_impl.h" +#include "cc/trees/layer_tree_host.h" #include "cc/resources/ui_resource_client.h" #include "ui/base/latency_info.h" @@ -42,7 +43,6 @@ class Proxy; class ResourceProvider; class TileManager; struct RendererCapabilities; -struct UIResourceRequest; typedef std::list UIResourceRequestQueue; diff --git a/chromium/content/browser/media/webrtc_identity_store_backend.cc b/chromium/content/browser/media/webrtc_identity_store_backend.cc index 9ec73e92f69..4188116bc71 100644 --- a/chromium/content/browser/media/webrtc_identity_store_backend.cc +++ b/chromium/content/browser/media/webrtc_identity_store_backend.cc @@ -46,43 +46,6 @@ static bool InitDB(sql::Connection* db) { "creation_time INTEGER)"); } -struct WebRTCIdentityStoreBackend::IdentityKey { - IdentityKey(const GURL& origin, const std::string& identity_name) - : origin(origin), identity_name(identity_name) {} - - bool operator<(const IdentityKey& other) const { - return origin < other.origin || - (origin == other.origin && identity_name < other.identity_name); - } - - GURL origin; - std::string identity_name; -}; - -struct WebRTCIdentityStoreBackend::Identity { - Identity(const std::string& common_name, - const std::string& certificate, - const std::string& private_key) - : common_name(common_name), - certificate(certificate), - private_key(private_key), - creation_time(base::Time::Now().ToInternalValue()) {} - - Identity(const std::string& common_name, - const std::string& certificate, - const std::string& private_key, - int64 creation_time) - : common_name(common_name), - certificate(certificate), - private_key(private_key), - creation_time(creation_time) {} - - std::string common_name; - std::string certificate; - std::string private_key; - int64 creation_time; -}; - struct WebRTCIdentityStoreBackend::PendingFindRequest { PendingFindRequest(const GURL& origin, const std::string& identity_name, diff --git a/chromium/content/browser/media/webrtc_identity_store_backend.h b/chromium/content/browser/media/webrtc_identity_store_backend.h index ab4e1ed7e1e..e660c732cda 100644 --- a/chromium/content/browser/media/webrtc_identity_store_backend.h +++ b/chromium/content/browser/media/webrtc_identity_store_backend.h @@ -11,8 +11,7 @@ #include "base/time/time.h" #include "sql/connection.h" #include "sql/meta_table.h" - -class GURL; +#include "url/gurl.h" namespace base { class FilePath; @@ -88,7 +87,44 @@ class WebRTCIdentityStoreBackend }; struct PendingFindRequest; struct IdentityKey; - struct Identity; + + struct IdentityKey { + IdentityKey(const GURL& origin, const std::string& identity_name) + : origin(origin), identity_name(identity_name) {} + + bool operator<(const IdentityKey& other) const { + return origin < other.origin || + (origin == other.origin && identity_name < other.identity_name); + } + + GURL origin; + std::string identity_name; + }; + + struct Identity { + Identity(const std::string& common_name, + const std::string& certificate, + const std::string& private_key) + : common_name(common_name), + certificate(certificate), + private_key(private_key), + creation_time(base::Time::Now().ToInternalValue()) {} + + Identity(const std::string& common_name, + const std::string& certificate, + const std::string& private_key, + int64 creation_time) + : common_name(common_name), + certificate(certificate), + private_key(private_key), + creation_time(creation_time) {} + + std::string common_name; + std::string certificate; + std::string private_key; + int64 creation_time; + }; + typedef std::map IdentityMap; ~WebRTCIdentityStoreBackend(); -- cgit v1.2.1