Bug 1399039 - Don't initialize GlobalPageMetadata more than once r=sebastian

MozReview-Commit-ID: 6VqkvDrEc5K

--HG--
extra : rebase_source : 8cb917de8c7605097abaa69caeca0c39bd50ecf5
This commit is contained in:
Grigory Kruglov 2017-09-12 20:28:36 -04:00
Родитель 53f3caf373
Коммит 91f275f5c3
1 изменённых файлов: 8 добавлений и 0 удалений

Просмотреть файл

@ -47,6 +47,8 @@ import java.util.Map;
private final Map<String, GeckoBundle> queuedMetadata = private final Map<String, GeckoBundle> queuedMetadata =
Collections.synchronizedMap(new LimitedLinkedHashMap<String, GeckoBundle>()); Collections.synchronizedMap(new LimitedLinkedHashMap<String, GeckoBundle>());
private boolean initialized;
public static GlobalPageMetadata getInstance() { public static GlobalPageMetadata getInstance() {
return instance; return instance;
} }
@ -67,9 +69,15 @@ import java.util.Map;
private GlobalPageMetadata() {} private GlobalPageMetadata() {}
public void init() { public void init() {
if (initialized) {
return;
}
EventDispatcher EventDispatcher
.getInstance() .getInstance()
.registerBackgroundThreadListener(this, GlobalHistory.EVENT_URI_AVAILABLE_IN_HISTORY); .registerBackgroundThreadListener(this, GlobalHistory.EVENT_URI_AVAILABLE_IN_HISTORY);
initialized = true;
} }
public void add(BrowserDB db, ContentProviderClient contentProviderClient, String uri, boolean hasImage, @NonNull String metadataJSON) { public void add(BrowserDB db, ContentProviderClient contentProviderClient, String uri, boolean hasImage, @NonNull String metadataJSON) {