| 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));
|
| }
|
| }
|
|
|
|
|