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
8280b4ba
Kaydet (Commit)
8280b4ba
authored
Agu 04, 2012
tarafından
Nadeem Vawda
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
#15546: Fix BZ2File.read1()'s handling of pathological input data.
üst
d9f38bc7
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
8 additions
and
3 deletions
+8
-3
bz2.py
Lib/bz2.py
+8
-3
No files found.
Lib/bz2.py
Dosyayı görüntüle @
8280b4ba
...
...
@@ -174,6 +174,9 @@ class BZ2File(io.BufferedIOBase):
# Fill the readahead buffer if it is empty. Returns False on EOF.
def
_fill_buffer
(
self
):
# Depending on the input data, our call to the decompressor may not
# return any data. In this case, try again after reading another block.
while
True
:
if
self
.
_buffer
:
return
True
...
...
@@ -196,7 +199,6 @@ class BZ2File(io.BufferedIOBase):
self
.
_decompressor
=
BZ2Decompressor
()
self
.
_buffer
=
self
.
_decompressor
.
decompress
(
rawblock
)
return
True
# Read data until EOF.
# If return_data is false, consume the data without returning it.
...
...
@@ -256,11 +258,14 @@ class BZ2File(io.BufferedIOBase):
return
self
.
_read_block
(
size
)
def
read1
(
self
,
size
=-
1
):
"""Read up to size uncompressed bytes
with at most one rea
d
from the underlying stream.
"""Read up to size uncompressed bytes
, while trying to avoi
d
making multiple reads
from the underlying stream.
Returns b'' if the file is at EOF.
"""
# Usually, read1() calls _fp.read() at most once. However, sometimes
# this does not give enough data for the decompressor to make progress.
# In this case we make multiple reads, to avoid returning b"".
with
self
.
_lock
:
self
.
_check_can_read
()
if
(
size
==
0
or
self
.
_mode
==
_MODE_READ_EOF
or
...
...
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