Title: [187953] releases/WebKitGTK/webkit-2.8/Source/WebCore
- Revision
- 187953
- Author
- carlo...@webkit.org
- Date
- 2015-08-05 02:37:43 -0700 (Wed, 05 Aug 2015)
Log Message
Merge r187640 - [GTK] Have DataObjectGtk::unknownTypes() return a reference to the HashMap object
https://bugs.webkit.org/show_bug.cgi?id=147401
Reviewed by Carlos Garcia Campos.
Don't copy the DataObjectGtk::m_unknownTypes HashMap on every retrieval through
DataObjectGtk::unknownTypes(). The range-based for-loops that iterate over the
map in PasteboardGtk.cpp and PasteboardHelper.cpp are also cleaned up.
* platform/gtk/DataObjectGtk.cpp:
(WebCore::DataObjectGtk::unknownTypes):
* platform/gtk/DataObjectGtk.h:
* platform/gtk/PasteboardGtk.cpp:
(WebCore::Pasteboard::writePasteboard):
(WebCore::Pasteboard::types):
* platform/gtk/PasteboardHelper.cpp:
(WebCore::PasteboardHelper::fillSelectionData):
Modified Paths
Diff
Modified: releases/WebKitGTK/webkit-2.8/Source/WebCore/ChangeLog (187952 => 187953)
--- releases/WebKitGTK/webkit-2.8/Source/WebCore/ChangeLog 2015-08-05 09:04:40 UTC (rev 187952)
+++ releases/WebKitGTK/webkit-2.8/Source/WebCore/ChangeLog 2015-08-05 09:37:43 UTC (rev 187953)
@@ -1,3 +1,23 @@
+2015-07-31 Zan Dobersek <zdober...@igalia.com>
+
+ [GTK] Have DataObjectGtk::unknownTypes() return a reference to the HashMap object
+ https://bugs.webkit.org/show_bug.cgi?id=147401
+
+ Reviewed by Carlos Garcia Campos.
+
+ Don't copy the DataObjectGtk::m_unknownTypes HashMap on every retrieval through
+ DataObjectGtk::unknownTypes(). The range-based for-loops that iterate over the
+ map in PasteboardGtk.cpp and PasteboardHelper.cpp are also cleaned up.
+
+ * platform/gtk/DataObjectGtk.cpp:
+ (WebCore::DataObjectGtk::unknownTypes):
+ * platform/gtk/DataObjectGtk.h:
+ * platform/gtk/PasteboardGtk.cpp:
+ (WebCore::Pasteboard::writePasteboard):
+ (WebCore::Pasteboard::types):
+ * platform/gtk/PasteboardHelper.cpp:
+ (WebCore::PasteboardHelper::fillSelectionData):
+
2015-07-30 Michael Catanzaro <mcatanz...@igalia.com>
[GTK] Crashes when SoupSession is destroyed in exit handler
Modified: releases/WebKitGTK/webkit-2.8/Source/WebCore/platform/gtk/DataObjectGtk.cpp (187952 => 187953)
--- releases/WebKitGTK/webkit-2.8/Source/WebCore/platform/gtk/DataObjectGtk.cpp 2015-08-05 09:04:40 UTC (rev 187952)
+++ releases/WebKitGTK/webkit-2.8/Source/WebCore/platform/gtk/DataObjectGtk.cpp 2015-08-05 09:37:43 UTC (rev 187953)
@@ -33,7 +33,7 @@
str.replace(NonBreakingSpaceCharacter, SpaceCharacter);
}
-HashMap<String, String> DataObjectGtk::unknownTypes() const
+const HashMap<String, String>& DataObjectGtk::unknownTypes() const
{
return m_unknownTypeData;
}
Modified: releases/WebKitGTK/webkit-2.8/Source/WebCore/platform/gtk/DataObjectGtk.h (187952 => 187953)
--- releases/WebKitGTK/webkit-2.8/Source/WebCore/platform/gtk/DataObjectGtk.h 2015-08-05 09:04:40 UTC (rev 187952)
+++ releases/WebKitGTK/webkit-2.8/Source/WebCore/platform/gtk/DataObjectGtk.h 2015-08-05 09:37:43 UTC (rev 187953)
@@ -54,7 +54,7 @@
String text() const { return m_text; }
String markup() const { return m_markup; }
String unknownTypeData(const String& type) const { return m_unknownTypeData.get(type); }
- HashMap<String, String> unknownTypes() const;
+ const HashMap<String, String>& unknownTypes() const;
void setText(const String&);
void setMarkup(const String&);
void setUnknownTypeData(const String& type, const String& data) { m_unknownTypeData.set(type, data); }
Modified: releases/WebKitGTK/webkit-2.8/Source/WebCore/platform/gtk/PasteboardGtk.cpp (187952 => 187953)
--- releases/WebKitGTK/webkit-2.8/Source/WebCore/platform/gtk/PasteboardGtk.cpp 2015-08-05 09:04:40 UTC (rev 187952)
+++ releases/WebKitGTK/webkit-2.8/Source/WebCore/platform/gtk/PasteboardGtk.cpp 2015-08-05 09:37:43 UTC (rev 187953)
@@ -204,10 +204,8 @@
if (sourceDataObject->hasImage())
m_dataObject->setImage(sourceDataObject->image());
if (sourceDataObject->hasUnknownTypeData()) {
- auto types = m_dataObject->unknownTypes();
- auto end = types.end();
- for (auto it = types.begin(); it != end; ++it)
- m_dataObject->setUnknownTypeData(it->key, it->value);
+ for (auto& it : m_dataObject->unknownTypes())
+ m_dataObject->setUnknownTypeData(it.key, it.value);
}
if (m_gtkClipboard)
@@ -300,10 +298,8 @@
if (m_dataObject->hasFilenames())
types.append(ASCIILiteral("Files"));
- auto unknownTypes = m_dataObject->unknownTypes();
- auto end = unknownTypes.end();
- for (auto it = unknownTypes.begin(); it != end; ++it)
- types.append(it->key);
+ for (auto& key : m_dataObject->unknownTypes().keys())
+ types.append(key);
return types;
}
Modified: releases/WebKitGTK/webkit-2.8/Source/WebCore/platform/gtk/PasteboardHelper.cpp (187952 => 187953)
--- releases/WebKitGTK/webkit-2.8/Source/WebCore/platform/gtk/PasteboardHelper.cpp 2015-08-05 09:04:40 UTC (rev 187952)
+++ releases/WebKitGTK/webkit-2.8/Source/WebCore/platform/gtk/PasteboardHelper.cpp 2015-08-05 09:37:43 UTC (rev 187953)
@@ -162,10 +162,8 @@
GVariantBuilder builder;
g_variant_builder_init(&builder, G_VARIANT_TYPE_ARRAY);
- auto types = dataObject->unknownTypes();
- auto end = types.end();
- for (auto it = types.begin(); it != end; ++it) {
- GUniquePtr<gchar> dictItem(g_strdup_printf("{'%s', '%s'}", it->key.utf8().data(), it->value.utf8().data()));
+ for (auto& it : dataObject->unknownTypes()) {
+ GUniquePtr<gchar> dictItem(g_strdup_printf("{'%s', '%s'}", it.key.utf8().data(), it.value.utf8().data()));
g_variant_builder_add_parsed(&builder, dictItem.get());
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes