Index: Source/core/css/FontFaceSet.cpp |
diff --git a/Source/core/css/FontFaceSet.cpp b/Source/core/css/FontFaceSet.cpp |
index 253e7db3f7e2b167c1469b4e2edbe8f8b149115d..23f6ca77e7f938eb4842997f9131749ce355140f 100644 |
--- a/Source/core/css/FontFaceSet.cpp |
+++ b/Source/core/css/FontFaceSet.cpp |
@@ -357,17 +357,7 @@ bool FontFaceSet::isCSSConnectedFontFace(FontFace* fontFace) const |
return cssConnectedFontFaceList().contains(fontFace); |
} |
-void FontFaceSet::forEach(PassOwnPtr<FontFaceSetForEachCallback> callback, ScriptValue& thisArg) const |
-{ |
- forEachInternal(callback, &thisArg); |
-} |
- |
-void FontFaceSet::forEach(PassOwnPtr<FontFaceSetForEachCallback> callback) const |
-{ |
- forEachInternal(callback, 0); |
-} |
- |
-void FontFaceSet::forEachInternal(PassOwnPtr<FontFaceSetForEachCallback> callback, ScriptValue* thisArg) const |
+void FontFaceSet::forEach(PassOwnPtr<FontFaceSetForEachCallback> callback, const Optional<ScriptValue>& thisArg) const |
{ |
if (!inActiveDocumentContext()) |
return; |
@@ -381,10 +371,10 @@ void FontFaceSet::forEachInternal(PassOwnPtr<FontFaceSetForEachCallback> callbac |
for (size_t i = 0; i < fontFaces.size(); ++i) { |
FontFace* face = fontFaces[i].get(); |
- if (thisArg) |
- callback->handleItem(*thisArg, face, face, const_cast<FontFaceSet*>(this)); |
- else |
+ if (thisArg.isMissing()) |
callback->handleItem(face, face, const_cast<FontFaceSet*>(this)); |
+ else |
+ callback->handleItem(thisArg.get(), face, face, const_cast<FontFaceSet*>(this)); |
} |
} |