diff options
Diffstat (limited to 'patches/chromium/0009-Do-not-forward-declare-UIResourceRequest-Identity-an.patch')
-rw-r--r-- | patches/chromium/0009-Do-not-forward-declare-UIResourceRequest-Identity-an.patch | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/patches/chromium/0009-Do-not-forward-declare-UIResourceRequest-Identity-an.patch b/patches/chromium/0009-Do-not-forward-declare-UIResourceRequest-Identity-an.patch new file mode 100644 index 000000000..9d24881fb --- /dev/null +++ b/patches/chromium/0009-Do-not-forward-declare-UIResourceRequest-Identity-an.patch @@ -0,0 +1,133 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Zeno Albisser <zeno.albisser@digia.com> +Date: Tue, 29 Oct 2013 11:30:28 +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 +--- + cc/trees/layer_tree_impl.h | 1 + + .../browser/media/webrtc_identity_store_backend.cc | 37 ------------------- + .../browser/media/webrtc_identity_store_backend.h | 42 ++++++++++++++++++++-- + 3 files changed, 40 insertions(+), 40 deletions(-) + +diff --git a/cc/trees/layer_tree_impl.h b/cc/trees/layer_tree_impl.h +index eb6a015..2ae33df 100644 +--- a/cc/trees/layer_tree_impl.h ++++ b/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/events/latency_info.h" + +diff --git a/content/browser/media/webrtc_identity_store_backend.cc b/content/browser/media/webrtc_identity_store_backend.cc +index 9ec73e9..4188116 100644 +--- a/content/browser/media/webrtc_identity_store_backend.cc ++++ b/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/content/browser/media/webrtc_identity_store_backend.h b/content/browser/media/webrtc_identity_store_backend.h +index ab4e1ed..e660c73 100644 +--- a/content/browser/media/webrtc_identity_store_backend.h ++++ b/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<IdentityKey, Identity> IdentityMap; + + ~WebRTCIdentityStoreBackend(); |