Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
cpython
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
Batuhan Osman TASKAYA
cpython
Commits
b3c5d856
Kaydet (Commit)
b3c5d856
authored
May 09, 2013
tarafından
Serhiy Storchaka
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Sade Fark
Issue #16601: Restarting iteration over tarfile no more continues from where
it left off. Patch by Michael Birtwell.
üst
f28dfdd0
263fab94
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
19 additions
and
5 deletions
+19
-5
tarfile.py
Lib/tarfile.py
+7
-5
test_tarfile.py
Lib/test/test_tarfile.py
+8
-0
ACKS
Misc/ACKS
+1
-0
NEWS
Misc/NEWS
+3
-0
No files found.
Lib/tarfile.py
Dosyayı görüntüle @
b3c5d856
...
...
@@ -2397,16 +2397,18 @@ class TarIter:
# Fix for SF #1100429: Under rare circumstances it can
# happen that getmembers() is called during iteration,
# which will cause TarIter to stop prematurely.
if
not
self
.
tarfile
.
_loaded
:
if
self
.
index
==
0
and
self
.
tarfile
.
firstmember
is
not
None
:
tarinfo
=
self
.
tarfile
.
next
()
elif
self
.
index
<
len
(
self
.
tarfile
.
members
):
tarinfo
=
self
.
tarfile
.
members
[
self
.
index
]
elif
not
self
.
tarfile
.
_loaded
:
tarinfo
=
self
.
tarfile
.
next
()
if
not
tarinfo
:
self
.
tarfile
.
_loaded
=
True
raise
StopIteration
else
:
try
:
tarinfo
=
self
.
tarfile
.
members
[
self
.
index
]
except
IndexError
:
raise
StopIteration
raise
StopIteration
self
.
index
+=
1
return
tarinfo
...
...
Lib/test/test_tarfile.py
Dosyayı görüntüle @
b3c5d856
...
...
@@ -415,6 +415,14 @@ class MiscReadTest(CommonReadTest):
finally
:
support
.
unlink
(
empty
)
def
test_parallel_iteration
(
self
):
# Issue #16601: Restarting iteration over tarfile continued
# from where it left off.
with
tarfile
.
open
(
self
.
tarname
)
as
tar
:
for
m1
,
m2
in
zip
(
tar
,
tar
):
self
.
assertEqual
(
m1
.
offset
,
m2
.
offset
)
self
.
assertEqual
(
m1
.
get_info
(),
m2
.
get_info
())
class
StreamReadTest
(
CommonReadTest
):
...
...
Misc/ACKS
Dosyayı görüntüle @
b3c5d856
...
...
@@ -118,6 +118,7 @@ Adrian von Bidder
David Binger
Dominic Binks
Philippe Biondi
Michael Birtwell
Stuart Bishop
Roy Bixler
Daniel Black
...
...
Misc/NEWS
Dosyayı görüntüle @
b3c5d856
...
...
@@ -86,6 +86,9 @@ Core and Builtins
Library
-------
- Issue #16601: Restarting iteration over tarfile no more continues from where
it left off. Patch by Michael Birtwell.
- Issue #17289: The readline module now plays nicer with external modules
or applications changing the rl_completer_word_break_characters global
variable. Initial patch by Bradley Froehle.
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment