diff --git a/mobile/android/base/java/org/mozilla/gecko/GlobalPageMetadata.java b/mobile/android/base/java/org/mozilla/gecko/GlobalPageMetadata.java index 3b10a67128e9..041e884fb154 100644 --- a/mobile/android/base/java/org/mozilla/gecko/GlobalPageMetadata.java +++ b/mobile/android/base/java/org/mozilla/gecko/GlobalPageMetadata.java @@ -47,6 +47,8 @@ import java.util.Map; private final Map queuedMetadata = Collections.synchronizedMap(new LimitedLinkedHashMap()); + private boolean initialized; + public static GlobalPageMetadata getInstance() { return instance; } @@ -67,9 +69,15 @@ import java.util.Map; private GlobalPageMetadata() {} public void init() { + if (initialized) { + return; + } + EventDispatcher .getInstance() .registerBackgroundThreadListener(this, GlobalHistory.EVENT_URI_AVAILABLE_IN_HISTORY); + + initialized = true; } public void add(BrowserDB db, ContentProviderClient contentProviderClient, String uri, boolean hasImage, @NonNull String metadataJSON) {