Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 2447589

Browse files
committed
Fix what I believe is a bug: when removing all previous handlers,
should copy the handlers list because it's being modified by the loop.
1 parent 328fff7 commit 2447589

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

Lib/logging/config.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ def fileConfig(fname, defaults=None):
133133
if "level" in opts:
134134
level = cp.get(sectname, "level")
135135
log.setLevel(logging._levelNames[level])
136-
for h in root.handlers:
136+
for h in root.handlers[:]:
137137
root.removeHandler(h)
138138
hlist = cp.get(sectname, "handlers")
139139
if len(hlist):
@@ -165,7 +165,7 @@ def fileConfig(fname, defaults=None):
165165
if "level" in opts:
166166
level = cp.get(sectname, "level")
167167
logger.setLevel(logging._levelNames[level])
168-
for h in logger.handlers:
168+
for h in logger.handlers[:]:
169169
logger.removeHandler(h)
170170
logger.propagate = propagate
171171
logger.disabled = 0

0 commit comments

Comments
 (0)