summaryrefslogtreecommitdiffstats
path: root/base
diff options
context:
space:
mode:
authorfinnur@chromium.org <finnur@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-09-24 12:47:54 +0000
committerfinnur@chromium.org <finnur@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-09-24 12:47:54 +0000
commitf165655bb41ebd3a5d96d6f407ece32d0809f272 (patch)
treedd53cdf44a0b2c7e4fb68eabd18dfe6db91391df /base
parent63d007da3059280a7a9cb022b4e3ac4afc5f345c (diff)
downloadchromium_src-f165655bb41ebd3a5d96d6f407ece32d0809f272.zip
chromium_src-f165655bb41ebd3a5d96d6f407ece32d0809f272.tar.gz
chromium_src-f165655bb41ebd3a5d96d6f407ece32d0809f272.tar.bz2
Fix possible naming conflict in macro.
The ObserverList macro (FOR_EACH_OBSERVER) uses an iterator named |it|, which can in some cases conflict with locally defined variables. Make the iterator variable name slightly more unique BUG=None R=jar@chromium.org Review URL: https://codereview.chromium.org/23672052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@224985 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base')
-rw-r--r--base/observer_list.h17
1 files changed, 9 insertions, 8 deletions
diff --git a/base/observer_list.h b/base/observer_list.h
index b44e33f..bd1dc64 100644
--- a/base/observer_list.h
+++ b/base/observer_list.h
@@ -203,14 +203,15 @@ class ObserverList : public ObserverListBase<ObserverType> {
}
};
-#define FOR_EACH_OBSERVER(ObserverType, observer_list, func) \
- do { \
- if ((observer_list).might_have_observers()) { \
- ObserverListBase<ObserverType>::Iterator it(observer_list); \
- ObserverType* obs; \
- while ((obs = it.GetNext()) != NULL) \
- obs->func; \
- } \
+#define FOR_EACH_OBSERVER(ObserverType, observer_list, func) \
+ do { \
+ if ((observer_list).might_have_observers()) { \
+ ObserverListBase<ObserverType>::Iterator \
+ it_inside_observer_macro(observer_list); \
+ ObserverType* obs; \
+ while ((obs = it_inside_observer_macro.GetNext()) != NULL) \
+ obs->func; \
+ } \
} while (0)
#endif // BASE_OBSERVER_LIST_H__