Skip to content

Commit cc730d0

Browse files
committed
Bug 1184468 - Use nsTHashtable::Keys where possible. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D108588
1 parent 613e20d commit cc730d0

33 files changed

+73
-136
lines changed

dom/animation/EffectCompositor.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_END
5353

5454
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(EffectCompositor)
5555
for (const auto& elementSet : tmp->mElementsToRestyle) {
56-
for (const auto& element : elementSet) {
57-
CycleCollectionNoteChild(cb, element.GetKey().mElement,
56+
for (const auto& key : elementSet.Keys()) {
57+
CycleCollectionNoteChild(cb, key.mElement,
5858
"EffectCompositor::mElementsToRestyle[]",
5959
cb.Flags());
6060
}

dom/base/Element.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3932,8 +3932,7 @@ static void IntersectionObserverPropertyDtor(void* aObject,
39323932
void* aData) {
39333933
auto* element = static_cast<Element*>(aObject);
39343934
auto* observers = static_cast<IntersectionObserverList*>(aPropertyValue);
3935-
for (const auto& entry : *observers) {
3936-
DOMIntersectionObserver* observer = entry.GetKey();
3935+
for (DOMIntersectionObserver* observer : observers->Keys()) {
39373936
observer->UnlinkTarget(*element);
39383937
}
39393938
delete observers;

dom/base/ImageTracker.cpp

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -104,8 +104,7 @@ nsresult ImageTracker::SetLockingState(bool aLocked) {
104104
if (mLocking == aLocked) return NS_OK;
105105

106106
// Otherwise, iterate over our images and perform the appropriate action.
107-
for (const auto& entry : mImages) {
108-
imgIRequest* image = entry.GetKey();
107+
for (imgIRequest* image : mImages.Keys()) {
109108
if (aLocked) {
110109
image->LockImage();
111110
} else {
@@ -124,8 +123,7 @@ void ImageTracker::SetAnimatingState(bool aAnimating) {
124123
if (mAnimating == aAnimating) return;
125124

126125
// Otherwise, iterate over our images and perform the appropriate action.
127-
for (const auto& entry : mImages) {
128-
imgIRequest* image = entry.GetKey();
126+
for (imgIRequest* image : mImages.Keys()) {
129127
if (aAnimating) {
130128
image->IncrementAnimationConsumers();
131129
} else {
@@ -138,8 +136,8 @@ void ImageTracker::SetAnimatingState(bool aAnimating) {
138136
}
139137

140138
void ImageTracker::RequestDiscardAll() {
141-
for (const auto& entry : mImages) {
142-
entry.GetKey()->RequestDiscard();
139+
for (imgIRequest* image : mImages.Keys()) {
140+
image->RequestDiscard();
143141
}
144142
}
145143

@@ -153,8 +151,7 @@ void ImageTracker::MediaFeatureValuesChangedAllDocuments(
153151
// Pull the images out into an array and iterate over them, in case the
154152
// image notifications do something that ends up modifying the table.
155153
nsTArray<nsCOMPtr<imgIContainer>> images;
156-
for (const auto& entry : mImages) {
157-
imgIRequest* req = entry.GetKey();
154+
for (imgIRequest* req : mImages.Keys()) {
158155
nsCOMPtr<imgIContainer> image;
159156
req->GetImage(getter_AddRefs(image));
160157
if (!image) {

dom/commandhandler/nsControllerCommandTable.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -171,11 +171,8 @@ nsControllerCommandTable::GetCommandState(const char* aCommandName,
171171

172172
NS_IMETHODIMP
173173
nsControllerCommandTable::GetSupportedCommands(nsTArray<nsCString>& aCommands) {
174-
aCommands.SetCapacity(mCommandsTable.Count());
174+
mozilla::AppendToArray(aCommands, mCommandsTable.Keys());
175175

176-
for (auto iter = mCommandsTable.Iter(); !iter.Done(); iter.Next()) {
177-
aCommands.AppendElement(iter.Key());
178-
}
179176
return NS_OK;
180177
}
181178

dom/gamepad/GamepadManager.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -169,8 +169,8 @@ void GamepadManager::RemoveListener(nsGlobalWindowInner* aWindow) {
169169
return; // doesn't exist
170170
}
171171

172-
for (auto iter = mGamepads.ConstIter(); !iter.Done(); iter.Next()) {
173-
aWindow->RemoveGamepad(iter.Key());
172+
for (const auto& key : mGamepads.Keys()) {
173+
aWindow->RemoveGamepad(key);
174174
}
175175

176176
mListeners.RemoveElement(aWindow);

dom/html/HTMLFormControlsCollection.cpp

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -309,9 +309,7 @@ void HTMLFormControlsCollection::GetSupportedNames(nsTArray<nsString>& aNames) {
309309
// Just enumerate mNameLookupTable. This won't guarantee order, but
310310
// that's OK, because the HTML5 spec doesn't define an order for
311311
// this enumeration.
312-
for (auto iter = mNameLookupTable.Iter(); !iter.Done(); iter.Next()) {
313-
aNames.AppendElement(iter.Key());
314-
}
312+
AppendToArray(aNames, mNameLookupTable.Keys());
315313
}
316314

317315
/* virtual */

dom/html/HTMLMediaElement.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3559,10 +3559,8 @@ void HTMLMediaElement::UpdateOutputTrackSources() {
35593559
}
35603560

35613561
// ...and all MediaElementTrackSources.
3562-
AutoTArray<nsString, 4> trackSourcesToRemove;
3563-
for (const auto& entry : mOutputTrackSources) {
3564-
trackSourcesToRemove.AppendElement(entry.GetKey());
3565-
}
3562+
auto trackSourcesToRemove =
3563+
ToTArray<AutoTArray<nsString, 4>>(mOutputTrackSources.Keys());
35663564

35673565
// Then work out the differences.
35683566
mediaTracksToAdd.RemoveLastElements(

dom/ipc/SharedStringMap.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -90,10 +90,7 @@ Result<Ok, nsresult> SharedStringMapBuilder::Finalize(
9090

9191
MOZ_ASSERT(mEntries.Count() == mKeyTable.Count());
9292

93-
nsTArray<nsCString> keys(mEntries.Count());
94-
for (auto iter = mEntries.Iter(); !iter.Done(); iter.Next()) {
95-
keys.AppendElement(iter.Key());
96-
}
93+
auto keys = ToTArray<nsTArray<nsCString>>(mEntries.Keys());
9794
keys.Sort();
9895

9996
Header header = {kSharedStringMapMagic, uint32_t(keys.Length())};

dom/localstorage/LSSnapshot.cpp

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -318,9 +318,7 @@ nsresult LSSnapshot::GetKeys(nsTArray<nsString>& aKeys) {
318318
return rv;
319319
}
320320

321-
for (auto iter = mValues.ConstIter(); !iter.Done(); iter.Next()) {
322-
aKeys.AppendElement(iter.Key());
323-
}
321+
AppendToArray(aKeys, mValues.Keys());
324322

325323
return NS_OK;
326324
}

dom/media/gmp/GMPServiceChild.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -498,11 +498,7 @@ void GMPServiceChild::RemoveGMPContentParent(
498498

499499
void GMPServiceChild::GetAlreadyBridgedTo(
500500
nsTArray<base::ProcessId>& aAlreadyBridgedTo) {
501-
aAlreadyBridgedTo.SetCapacity(mContentParents.Count());
502-
for (auto iter = mContentParents.Iter(); !iter.Done(); iter.Next()) {
503-
const uint64_t& id = iter.Key();
504-
aAlreadyBridgedTo.AppendElement(id);
505-
}
501+
AppendToArray(aAlreadyBridgedTo, mContentParents.Keys());
506502
}
507503

508504
class OpenPGMPServiceChild : public mozilla::Runnable {

0 commit comments

Comments
 (0)