parent
9c8a7098fd
commit
383f5aea63
@ -1,41 +0,0 @@
|
|||||||
In file included from ../../third_party/blink/renderer/platform/heap/persistent.h:18,
|
|
||||||
from ../../third_party/blink/public/platform/web_private_ptr.h:40,
|
|
||||||
from ../../third_party/blink/public/platform/web_media_stream_track.h:33,
|
|
||||||
from ../../third_party/blink/public/platform/web_media_stream_source.h:37,
|
|
||||||
from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.h:19,
|
|
||||||
from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.cc:5:
|
|
||||||
../../third_party/blink/renderer/platform/wtf/cross_thread_copier.h: In instantiation of 'struct WTF::CrossThreadCopierPassThrough<webrtc::VideoTrackInterface>':
|
|
||||||
../../third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h:169:14: required from here
|
|
||||||
../../third_party/blink/renderer/platform/wtf/cross_thread_copier.h:80:15: error: invalid abstract return type 'webrtc::VideoTrackInterface'
|
|
||||||
80 | static Type Copy(const T& parameter) { return parameter; }
|
|
||||||
| ^~~~
|
|
||||||
In file included from ../../third_party/webrtc/api/peer_connection_interface.h:88,
|
|
||||||
from ../../third_party/blink/public/platform/web_rtc_peer_connection_handler.h:39,
|
|
||||||
from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.h:20,
|
|
||||||
from ../../third_party/blink/renderer/modules/peerconnection/rtc_peer_connection_handler.cc:5:
|
|
||||||
../../third_party/webrtc/api/media_stream_interface.h:174:18: note: because the following virtual functions are pure within 'webrtc::VideoTrackInterface':
|
|
||||||
174 | class RTC_EXPORT VideoTrackInterface
|
|
||||||
| ^~~~~~~~~~~~~~~~~~~
|
|
||||||
../../third_party/webrtc/api/media_stream_interface.h:48:16: note: 'virtual void webrtc::NotifierInterface::RegisterObserver(webrtc::ObserverInterface*)'
|
|
||||||
48 | virtual void RegisterObserver(ObserverInterface* observer) = 0;
|
|
||||||
| ^~~~~~~~~~~~~~~~
|
|
||||||
../../third_party/webrtc/api/media_stream_interface.h:49:16: note: 'virtual void webrtc::NotifierInterface::UnregisterObserver(webrtc::ObserverInterface*)'
|
|
||||||
49 | virtual void UnregisterObserver(ObserverInterface* observer) = 0;
|
|
||||||
| ^~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
diff --git a/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h b/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
|
|
||||||
index 54cb7d1..0d6c40f 100644
|
|
||||||
--- a/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
|
|
||||||
+++ b/third_party/blink/renderer/modules/peerconnection/adapters/web_rtc_cross_thread_copier.h
|
|
||||||
@@ -165,8 +165,9 @@ struct CrossThreadCopier<blink::MediaStreamVideoTrack>
|
|
||||||
};
|
|
||||||
|
|
||||||
template <>
|
|
||||||
-struct CrossThreadCopier<webrtc::VideoTrackInterface>
|
|
||||||
- : public CrossThreadCopierPassThrough<webrtc::VideoTrackInterface> {
|
|
||||||
+struct CrossThreadCopier<rtc::scoped_refptr<webrtc::VideoTrackInterface>>
|
|
||||||
+ : public CrossThreadCopierPassThrough<
|
|
||||||
+ rtc::scoped_refptr<webrtc::VideoTrackInterface>> {
|
|
||||||
STATIC_ONLY(CrossThreadCopier);
|
|
||||||
};
|
|
||||||
|
|
@ -1,229 +0,0 @@
|
|||||||
From cdf3e81ff49b200213d67d65558f2919222b60ab Mon Sep 17 00:00:00 2001
|
|
||||||
From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
|
|
||||||
Date: Mon, 16 Dec 2019 11:39:11 +0000
|
|
||||||
Subject: [PATCH] BookmarkModelMerger: Move RemoteTreeNode declaration to header.
|
|
||||||
|
|
||||||
This fixes the build with libstdc++ after commit 8f5dad93e58 ("Fix CHECK
|
|
||||||
failure due to untracked local nodes"):
|
|
||||||
|
|
||||||
/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/stl_pair.h:215:11: error: field has incomplete type 'sync_bookmarks::BookmarkModelMerger::RemoteTreeNode'
|
|
||||||
_T2 second; /// @c second is a copy of the second object
|
|
||||||
^
|
|
||||||
/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/ext/aligned_buffer.h:91:28: note: in instantiation of template class 'std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>' requested here
|
|
||||||
: std::aligned_storage<sizeof(_Tp), __alignof__(_Tp)>
|
|
||||||
^
|
|
||||||
/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:233:43: note: in instantiation of template class '__gnu_cxx::__aligned_buffer<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >' requested here
|
|
||||||
__gnu_cxx::__aligned_buffer<_Value> _M_storage;
|
|
||||||
^
|
|
||||||
/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:264:39: note: in instantiation of template class 'std::__detail::_Hash_node_value_base<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >' requested here
|
|
||||||
struct _Hash_node<_Value, true> : _Hash_node_value_base<_Value>
|
|
||||||
^
|
|
||||||
/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable_policy.h:2028:25: note: in instantiation of template class 'std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, true>' requested here
|
|
||||||
rebind_traits<typename __node_type::value_type>;
|
|
||||||
^
|
|
||||||
/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/hashtable.h:184:15: note: in instantiation of template class 'std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, true> > >
|
|
||||||
' requested here
|
|
||||||
private __detail::_Hashtable_alloc<
|
|
||||||
^
|
|
||||||
/usr/lib/gcc/x86_64-redhat-linux/9/../../../../include/c++/9/bits/unordered_map.h:105:18: note: in instantiation of template class 'std::_Hashtable<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode>, std::allocator<std::pair<con
|
|
||||||
st std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> >, std::__detail::_Select1st, std::equal_to<std::__cxx11::basic_string<char> >, std::hash<std::string>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__deta
|
|
||||||
il::_Hashtable_traits<true, false, true> >' requested here
|
|
||||||
_Hashtable _M_h;
|
|
||||||
^
|
|
||||||
../../components/sync_bookmarks/bookmark_model_merger.h:146:22: note: in instantiation of template class 'std::unordered_map<std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode, std::hash<std::string>, std::equal_to<std::__cxx11::basic_string<char> >, std::allocator<std::pair<con
|
|
||||||
st std::__cxx11::basic_string<char>, sync_bookmarks::BookmarkModelMerger::RemoteTreeNode> > >' requested here
|
|
||||||
const RemoteForest remote_forest_;
|
|
||||||
^
|
|
||||||
../../components/sync_bookmarks/bookmark_model_merger.h:53:9: note: forward declaration of 'sync_bookmarks::BookmarkModelMerger::RemoteTreeNode'
|
|
||||||
class RemoteTreeNode;
|
|
||||||
^
|
|
||||||
|
|
||||||
Essentially, the problem is that libstdc++'s std::unordered_map<T, U>
|
|
||||||
implementation requires both T and U to be fully declared. I raised the
|
|
||||||
problem in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92770, and GCC's
|
|
||||||
position is that we are relying on undefined behavior according to the C++
|
|
||||||
standard (https://eel.is/c++draft/requirements#res.on.functions-2.5).
|
|
||||||
|
|
||||||
Bug: 957519
|
|
||||||
Change-Id: Ife7e435e516932a795bfbe05b2c910c3272878f0
|
|
||||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1960156
|
|
||||||
Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
|
|
||||||
Reviewed-by: Mikel Astiz <mastiz@chromium.org>
|
|
||||||
Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
|
|
||||||
Cr-Commit-Position: refs/heads/master@{#725070}
|
|
||||||
---
|
|
||||||
|
|
||||||
diff --git a/components/sync_bookmarks/bookmark_model_merger.cc b/components/sync_bookmarks/bookmark_model_merger.cc
|
|
||||||
index eae153ef..579848e 100644
|
|
||||||
--- a/components/sync_bookmarks/bookmark_model_merger.cc
|
|
||||||
+++ b/components/sync_bookmarks/bookmark_model_merger.cc
|
|
||||||
@@ -5,7 +5,6 @@
|
|
||||||
#include "components/sync_bookmarks/bookmark_model_merger.h"
|
|
||||||
|
|
||||||
#include <algorithm>
|
|
||||||
-#include <memory>
|
|
||||||
#include <set>
|
|
||||||
#include <string>
|
|
||||||
#include <utility>
|
|
||||||
@@ -205,66 +204,44 @@
|
|
||||||
|
|
||||||
} // namespace
|
|
||||||
|
|
||||||
-class BookmarkModelMerger::RemoteTreeNode final {
|
|
||||||
- public:
|
|
||||||
- // Constructs a tree given |update| as root and recursively all descendants by
|
|
||||||
- // traversing |*updates_per_parent_id|. |update| and |updates_per_parent_id|
|
|
||||||
- // must not be null. All updates |*updates_per_parent_id| must represent valid
|
|
||||||
- // updates. Updates corresponding from descendant nodes are moved away from
|
|
||||||
- // |*updates_per_parent_id|.
|
|
||||||
- static RemoteTreeNode BuildTree(
|
|
||||||
- std::unique_ptr<syncer::UpdateResponseData> update,
|
|
||||||
- UpdatesPerParentId* updates_per_parent_id);
|
|
||||||
+BookmarkModelMerger::RemoteTreeNode::RemoteTreeNode() = default;
|
|
||||||
|
|
||||||
- ~RemoteTreeNode() = default;
|
|
||||||
+BookmarkModelMerger::RemoteTreeNode::~RemoteTreeNode() = default;
|
|
||||||
|
|
||||||
- // Allow moves, useful during construction.
|
|
||||||
- RemoteTreeNode(RemoteTreeNode&&) = default;
|
|
||||||
- RemoteTreeNode& operator=(RemoteTreeNode&&) = default;
|
|
||||||
+BookmarkModelMerger::RemoteTreeNode::RemoteTreeNode(
|
|
||||||
+ BookmarkModelMerger::RemoteTreeNode&&) = default;
|
|
||||||
+BookmarkModelMerger::RemoteTreeNode& BookmarkModelMerger::RemoteTreeNode::
|
|
||||||
+operator=(BookmarkModelMerger::RemoteTreeNode&&) = default;
|
|
||||||
|
|
||||||
- const syncer::EntityData& entity() const { return *update_->entity; }
|
|
||||||
- int64_t response_version() const { return update_->response_version; }
|
|
||||||
+void BookmarkModelMerger::RemoteTreeNode::EmplaceSelfAndDescendantsByGUID(
|
|
||||||
+ std::unordered_map<std::string, const RemoteTreeNode*>*
|
|
||||||
+ guid_to_remote_node_map) const {
|
|
||||||
+ DCHECK(guid_to_remote_node_map);
|
|
||||||
|
|
||||||
- // Direct children nodes, sorted by ascending unique position. These are
|
|
||||||
- // guaranteed to be valid updates (e.g. IsValidBookmarkSpecifics()).
|
|
||||||
- const std::vector<RemoteTreeNode>& children() const { return children_; }
|
|
||||||
+ const std::string& guid = entity().specifics.bookmark().guid();
|
|
||||||
+ if (!guid.empty()) {
|
|
||||||
+ DCHECK(base::IsValidGUID(guid));
|
|
||||||
|
|
||||||
- // Recursively emplaces all GUIDs (this node and descendants) into
|
|
||||||
- // |*guid_to_remote_node_map|, which must not be null.
|
|
||||||
- void EmplaceSelfAndDescendantsByGUID(
|
|
||||||
- std::unordered_map<std::string, const RemoteTreeNode*>*
|
|
||||||
- guid_to_remote_node_map) const {
|
|
||||||
- DCHECK(guid_to_remote_node_map);
|
|
||||||
-
|
|
||||||
- const std::string& guid = entity().specifics.bookmark().guid();
|
|
||||||
- if (!guid.empty()) {
|
|
||||||
- DCHECK(base::IsValidGUID(guid));
|
|
||||||
-
|
|
||||||
- // Duplicate GUIDs have been sorted out before.
|
|
||||||
- bool success = guid_to_remote_node_map->emplace(guid, this).second;
|
|
||||||
- DCHECK(success);
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
- for (const RemoteTreeNode& child : children_) {
|
|
||||||
- child.EmplaceSelfAndDescendantsByGUID(guid_to_remote_node_map);
|
|
||||||
- }
|
|
||||||
+ // Duplicate GUIDs have been sorted out before.
|
|
||||||
+ bool success = guid_to_remote_node_map->emplace(guid, this).second;
|
|
||||||
+ DCHECK(success);
|
|
||||||
}
|
|
||||||
|
|
||||||
- private:
|
|
||||||
- static bool UniquePositionLessThan(const RemoteTreeNode& lhs,
|
|
||||||
- const RemoteTreeNode& rhs) {
|
|
||||||
- const syncer::UniquePosition a_pos =
|
|
||||||
- syncer::UniquePosition::FromProto(lhs.entity().unique_position);
|
|
||||||
- const syncer::UniquePosition b_pos =
|
|
||||||
- syncer::UniquePosition::FromProto(rhs.entity().unique_position);
|
|
||||||
- return a_pos.LessThan(b_pos);
|
|
||||||
+ for (const RemoteTreeNode& child : children_) {
|
|
||||||
+ child.EmplaceSelfAndDescendantsByGUID(guid_to_remote_node_map);
|
|
||||||
}
|
|
||||||
+}
|
|
||||||
|
|
||||||
- RemoteTreeNode() = default;
|
|
||||||
-
|
|
||||||
- std::unique_ptr<syncer::UpdateResponseData> update_;
|
|
||||||
- std::vector<RemoteTreeNode> children_;
|
|
||||||
-};
|
|
||||||
+// static
|
|
||||||
+bool BookmarkModelMerger::RemoteTreeNode::UniquePositionLessThan(
|
|
||||||
+ const RemoteTreeNode& lhs,
|
|
||||||
+ const RemoteTreeNode& rhs) {
|
|
||||||
+ const syncer::UniquePosition a_pos =
|
|
||||||
+ syncer::UniquePosition::FromProto(lhs.entity().unique_position);
|
|
||||||
+ const syncer::UniquePosition b_pos =
|
|
||||||
+ syncer::UniquePosition::FromProto(rhs.entity().unique_position);
|
|
||||||
+ return a_pos.LessThan(b_pos);
|
|
||||||
+}
|
|
||||||
|
|
||||||
// static
|
|
||||||
BookmarkModelMerger::RemoteTreeNode
|
|
||||||
diff --git a/components/sync_bookmarks/bookmark_model_merger.h b/components/sync_bookmarks/bookmark_model_merger.h
|
|
||||||
index 9b59200..bf0783ec 100644
|
|
||||||
--- a/components/sync_bookmarks/bookmark_model_merger.h
|
|
||||||
+++ b/components/sync_bookmarks/bookmark_model_merger.h
|
|
||||||
@@ -5,6 +5,7 @@
|
|
||||||
#ifndef COMPONENTS_SYNC_BOOKMARKS_BOOKMARK_MODEL_MERGER_H_
|
|
||||||
#define COMPONENTS_SYNC_BOOKMARKS_BOOKMARK_MODEL_MERGER_H_
|
|
||||||
|
|
||||||
+#include <memory>
|
|
||||||
#include <string>
|
|
||||||
#include <unordered_map>
|
|
||||||
#include <vector>
|
|
||||||
@@ -50,7 +51,52 @@
|
|
||||||
|
|
||||||
private:
|
|
||||||
// Internal representation of a remote tree, composed of nodes.
|
|
||||||
- class RemoteTreeNode;
|
|
||||||
+ class RemoteTreeNode final {
|
|
||||||
+ private:
|
|
||||||
+ using UpdatesPerParentId =
|
|
||||||
+ std::unordered_map<base::StringPiece,
|
|
||||||
+ syncer::UpdateResponseDataList,
|
|
||||||
+ base::StringPieceHash>;
|
|
||||||
+
|
|
||||||
+ public:
|
|
||||||
+ // Constructs a tree given |update| as root and recursively all descendants
|
|
||||||
+ // by traversing |*updates_per_parent_id|. |update| and
|
|
||||||
+ // |updates_per_parent_id| must not be null. All updates
|
|
||||||
+ // |*updates_per_parent_id| must represent valid updates. Updates
|
|
||||||
+ // corresponding from descendant nodes are moved away from
|
|
||||||
+ // |*updates_per_parent_id|.
|
|
||||||
+ static RemoteTreeNode BuildTree(
|
|
||||||
+ std::unique_ptr<syncer::UpdateResponseData> update,
|
|
||||||
+ UpdatesPerParentId* updates_per_parent_id);
|
|
||||||
+
|
|
||||||
+ ~RemoteTreeNode();
|
|
||||||
+
|
|
||||||
+ // Allow moves, useful during construction.
|
|
||||||
+ RemoteTreeNode(RemoteTreeNode&&);
|
|
||||||
+ RemoteTreeNode& operator=(RemoteTreeNode&&);
|
|
||||||
+
|
|
||||||
+ const syncer::EntityData& entity() const { return *update_->entity; }
|
|
||||||
+ int64_t response_version() const { return update_->response_version; }
|
|
||||||
+
|
|
||||||
+ // Direct children nodes, sorted by ascending unique position. These are
|
|
||||||
+ // guaranteed to be valid updates (e.g. IsValidBookmarkSpecifics()).
|
|
||||||
+ const std::vector<RemoteTreeNode>& children() const { return children_; }
|
|
||||||
+
|
|
||||||
+ // Recursively emplaces all GUIDs (this node and descendants) into
|
|
||||||
+ // |*guid_to_remote_node_map|, which must not be null.
|
|
||||||
+ void EmplaceSelfAndDescendantsByGUID(
|
|
||||||
+ std::unordered_map<std::string, const RemoteTreeNode*>*
|
|
||||||
+ guid_to_remote_node_map) const;
|
|
||||||
+
|
|
||||||
+ private:
|
|
||||||
+ static bool UniquePositionLessThan(const RemoteTreeNode& lhs,
|
|
||||||
+ const RemoteTreeNode& rhs);
|
|
||||||
+
|
|
||||||
+ RemoteTreeNode();
|
|
||||||
+
|
|
||||||
+ std::unique_ptr<syncer::UpdateResponseData> update_;
|
|
||||||
+ std::vector<RemoteTreeNode> children_;
|
|
||||||
+ };
|
|
||||||
|
|
||||||
// A forest composed of multiple trees where the root of each tree represents
|
|
||||||
// a permanent node, keyed by server-defined unique tag of the root.
|
|
@ -1,33 +0,0 @@
|
|||||||
In file included from ../../media/base/media_log_properties.h:13,
|
|
||||||
from ../../media/base/media_log.h:23,
|
|
||||||
from ../../media/filters/frame_processor.h:15,
|
|
||||||
from ../../media/filters/frame_processor.cc:5:
|
|
||||||
../../media/base/media_log_properties_helper.h:86:8: error: extra qualification not allowed [-fpermissive]
|
|
||||||
86 | struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
|
|
||||||
| ^~~~~~~~
|
|
||||||
../../media/base/media_log_properties_helper.h:86:75: error: explicit specialization of non-template 'media::internal::<unnamed struct>'
|
|
||||||
86 | struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
|
|
||||||
| ^
|
|
||||||
|
|
||||||
diff --git a/media/base/media_log_properties_helper.h b/media/base/media_log_properties_helper.h
|
|
||||||
index 95ff70a..549b003 100644
|
|
||||||
--- a/media/base/media_log_properties_helper.h
|
|
||||||
+++ b/media/base/media_log_properties_helper.h
|
|
||||||
@@ -83,7 +83,7 @@ struct MediaLogPropertyTypeConverter<std::vector<T>> {
|
|
||||||
|
|
||||||
// Specializer for sending AudioDecoderConfigs to the media tab in devtools.
|
|
||||||
template <>
|
|
||||||
-struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
|
|
||||||
+struct MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
|
|
||||||
static base::Value Convert(const AudioDecoderConfig& value) {
|
|
||||||
base::Value result(base::Value::Type::DICTIONARY);
|
|
||||||
result.SetStringKey("codec", GetCodecName(value.codec()));
|
|
||||||
@@ -114,7 +114,7 @@ struct internal::MediaLogPropertyTypeConverter<media::AudioDecoderConfig> {
|
|
||||||
|
|
||||||
// Specializer for sending VideoDecoderConfigs to the media tab in devtools.
|
|
||||||
template <>
|
|
||||||
-struct internal::MediaLogPropertyTypeConverter<VideoDecoderConfig> {
|
|
||||||
+struct MediaLogPropertyTypeConverter<VideoDecoderConfig> {
|
|
||||||
static base::Value Convert(const VideoDecoderConfig& value) {
|
|
||||||
base::Value result(base::Value::Type::DICTIONARY);
|
|
||||||
result.SetStringKey("codec", GetCodecName(value.codec()));
|
|
@ -1,33 +0,0 @@
|
|||||||
From 8273f4d3130e06fd8b6bef87b07c936304b971d9 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
|
|
||||||
Date: Tue, 10 Dec 2019 20:59:57 +0000
|
|
||||||
Subject: [PATCH] [cros search service]: Include <cmath> for std::pow()
|
|
||||||
|
|
||||||
IWYU. Follow up to commit 2b2ea3c09b ("[cros search service] Move shared
|
|
||||||
string matching functions to //chrome"), which broke the libstdc++ build:
|
|
||||||
|
|
||||||
../../chrome/common/string_matching/fuzzy_tokenized_string_match.cc:199:14: error: no member named 'pow' in namespace 'std'
|
|
||||||
std::pow(partial_match_penalty_rate, long_start - current - 1);
|
|
||||||
~~~~~^
|
|
||||||
|
|
||||||
Bug: 957519
|
|
||||||
Change-Id: I66f61cb4f93cfa0bfa3d1b00ba391ddd8f31a7fb
|
|
||||||
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1960310
|
|
||||||
Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
|
|
||||||
Reviewed-by: Jia Meng <jiameng@chromium.org>
|
|
||||||
Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
|
|
||||||
Cr-Commit-Position: refs/heads/master@{#723499}
|
|
||||||
---
|
|
||||||
|
|
||||||
diff --git a/chrome/common/string_matching/fuzzy_tokenized_string_match.cc b/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
|
|
||||||
index 8351fa7..884ef63 100644
|
|
||||||
--- a/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
|
|
||||||
+++ b/chrome/common/string_matching/fuzzy_tokenized_string_match.cc
|
|
||||||
@@ -5,6 +5,7 @@
|
|
||||||
#include "chrome/common/string_matching/fuzzy_tokenized_string_match.h"
|
|
||||||
|
|
||||||
#include <algorithm>
|
|
||||||
+#include <cmath>
|
|
||||||
#include <iterator>
|
|
||||||
|
|
||||||
#include "base/i18n/case_conversion.h"
|
|
@ -0,0 +1,13 @@
|
|||||||
|
diff -up chromium-81.0.4044.92/base/test/BUILD.gn.nofontconfigcache chromium-81.0.4044.92/base/test/BUILD.gn
|
||||||
|
--- chromium-81.0.4044.92/base/test/BUILD.gn.nofontconfigcache 2020-04-13 12:06:59.233796815 -0400
|
||||||
|
+++ chromium-81.0.4044.92/base/test/BUILD.gn 2020-04-13 12:20:16.302174851 -0400
|
||||||
|
@@ -245,9 +245,6 @@ static_library("test_support") {
|
||||||
|
if (is_linux) {
|
||||||
|
public_deps += [ ":fontconfig_util_linux" ]
|
||||||
|
data_deps = [ "//third_party/test_fonts" ]
|
||||||
|
- if (current_toolchain == host_toolchain) {
|
||||||
|
- data_deps += [ ":do_generate_fontconfig_caches" ]
|
||||||
|
- }
|
||||||
|
}
|
||||||
|
|
||||||
|
if (is_ios) {
|
@ -0,0 +1,79 @@
|
|||||||
|
diff -up chromium-81.0.4044.92/chrome/common/safe_browsing/BUILD.gn.nounrar chromium-81.0.4044.92/chrome/common/safe_browsing/BUILD.gn
|
||||||
|
--- chromium-81.0.4044.92/chrome/common/safe_browsing/BUILD.gn.nounrar 2020-04-13 12:01:29.703428516 -0400
|
||||||
|
+++ chromium-81.0.4044.92/chrome/common/safe_browsing/BUILD.gn 2020-04-13 12:03:33.653310203 -0400
|
||||||
|
@@ -72,39 +72,6 @@ if (safe_browsing_mode == 1) {
|
||||||
|
public_deps = [ "//components/safe_browsing/core:csd_proto" ]
|
||||||
|
}
|
||||||
|
|
||||||
|
- source_set("rar_analyzer") {
|
||||||
|
- sources = [
|
||||||
|
- "rar_analyzer.cc",
|
||||||
|
- "rar_analyzer.h",
|
||||||
|
- ]
|
||||||
|
-
|
||||||
|
- deps = [
|
||||||
|
- ":archive_analyzer_results",
|
||||||
|
- ":download_type_util",
|
||||||
|
- ":file_type_policies",
|
||||||
|
- "//base",
|
||||||
|
- "//base:i18n",
|
||||||
|
- "//components/safe_browsing/core:features",
|
||||||
|
- "//third_party/unrar:unrar",
|
||||||
|
- ]
|
||||||
|
-
|
||||||
|
- defines = [
|
||||||
|
- "_FILE_OFFSET_BITS=64",
|
||||||
|
- "LARGEFILE_SOURCE",
|
||||||
|
- "RAR_SMP",
|
||||||
|
- "SILENT",
|
||||||
|
-
|
||||||
|
- # The following is set to disable certain macro definitions in the unrar
|
||||||
|
- # source code.
|
||||||
|
- "CHROMIUM_UNRAR",
|
||||||
|
-
|
||||||
|
- # Disables exceptions in unrar, replaces them with process termination.
|
||||||
|
- "UNRAR_NO_EXCEPTIONS",
|
||||||
|
- ]
|
||||||
|
-
|
||||||
|
- public_deps = [ "//components/safe_browsing/core:csd_proto" ]
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
source_set("disk_image_type_sniffer_mac") {
|
||||||
|
sources = [
|
||||||
|
"disk_image_type_sniffer_mac.cc",
|
||||||
|
@@ -171,7 +138,6 @@ source_set("safe_browsing") {
|
||||||
|
":archive_analyzer_results",
|
||||||
|
":binary_feature_extractor",
|
||||||
|
":download_type_util",
|
||||||
|
- ":rar_analyzer",
|
||||||
|
"//components/safe_browsing/core:features",
|
||||||
|
]
|
||||||
|
|
||||||
|
diff -up chromium-81.0.4044.92/chrome/common/safe_browsing/DEPS.nounrar chromium-81.0.4044.92/chrome/common/safe_browsing/DEPS
|
||||||
|
--- chromium-81.0.4044.92/chrome/common/safe_browsing/DEPS.nounrar 2020-04-03 00:10:40.000000000 -0400
|
||||||
|
+++ chromium-81.0.4044.92/chrome/common/safe_browsing/DEPS 2020-04-13 12:01:29.703428516 -0400
|
||||||
|
@@ -1,6 +1,5 @@
|
||||||
|
include_rules = [
|
||||||
|
"+components/safe_browsing",
|
||||||
|
"+third_party/protobuf",
|
||||||
|
- "+third_party/unrar",
|
||||||
|
"+third_party/zlib",
|
||||||
|
]
|
||||||
|
diff -up chromium-81.0.4044.92/chrome/services/file_util/safe_archive_analyzer.cc.nounrar chromium-81.0.4044.92/chrome/services/file_util/safe_archive_analyzer.cc
|
||||||
|
--- chromium-81.0.4044.92/chrome/services/file_util/safe_archive_analyzer.cc.nounrar 2020-04-03 00:10:40.000000000 -0400
|
||||||
|
+++ chromium-81.0.4044.92/chrome/services/file_util/safe_archive_analyzer.cc 2020-04-13 12:01:29.703428516 -0400
|
||||||
|
@@ -46,10 +46,14 @@ void SafeArchiveAnalyzer::AnalyzeDmgFile
|
||||||
|
void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file,
|
||||||
|
base::File temporary_file,
|
||||||
|
AnalyzeRarFileCallback callback) {
|
||||||
|
+#if 0
|
||||||
|
DCHECK(rar_file.IsValid());
|
||||||
|
|
||||||
|
safe_browsing::ArchiveAnalyzerResults results;
|
||||||
|
safe_browsing::rar_analyzer::AnalyzeRarFile(
|
||||||
|
std::move(rar_file), std::move(temporary_file), &results);
|
||||||
|
std::move(callback).Run(results);
|
||||||
|
+#else
|
||||||
|
+ NOTREACHED();
|
||||||
|
+#endif
|
||||||
|
}
|
@ -0,0 +1,12 @@
|
|||||||
|
diff -up chromium-81.0.4044.92/third_party/perfetto/gn/BUILD.gn.unbundle-zlib chromium-81.0.4044.92/third_party/perfetto/gn/BUILD.gn
|
||||||
|
--- chromium-81.0.4044.92/third_party/perfetto/gn/BUILD.gn.unbundle-zlib 2020-04-13 12:25:09.001172601 -0400
|
||||||
|
+++ chromium-81.0.4044.92/third_party/perfetto/gn/BUILD.gn 2020-04-13 12:25:23.688921586 -0400
|
||||||
|
@@ -294,7 +294,7 @@ if (enable_perfetto_zlib) {
|
||||||
|
public_configs = [ "//buildtools:zlib_config" ]
|
||||||
|
public_deps = [ "//buildtools:zlib" ]
|
||||||
|
} else {
|
||||||
|
- public_configs = [ "//third_party/zlib:zlib_config" ]
|
||||||
|
+ public_configs = [ "//third_party/zlib:system_zlib" ]
|
||||||
|
public_deps = [ "//third_party/zlib" ]
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue