Skip to content

Commit adb2409

Browse files
authored
docs(example): Avoid UnboundLocalError for get_object when exception (#1442)
1 parent adca8ad commit adb2409

File tree

2 files changed

+32
-16
lines changed

2 files changed

+32
-16
lines changed

examples/get_object.py

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,41 +24,49 @@
2424
)
2525

2626
# Get data of an object.
27+
response = None
2728
try:
2829
response = client.get_object("my-bucket", "my-object")
2930
# Read data from response.
3031
finally:
31-
response.close()
32-
response.release_conn()
32+
if response:
33+
response.close()
34+
response.release_conn()
3335

3436
# Get data of an object of version-ID.
37+
response = None
3538
try:
3639
response = client.get_object(
3740
"my-bucket", "my-object",
3841
version_id="dfbd25b3-abec-4184-a4e8-5a35a5c1174d",
3942
)
4043
# Read data from response.
4144
finally:
42-
response.close()
43-
response.release_conn()
45+
if response:
46+
response.close()
47+
response.release_conn()
4448

4549
# Get data of an object from offset and length.
50+
response = None
4651
try:
4752
response = client.get_object(
4853
"my-bucket", "my-object", offset=512, length=1024,
4954
)
5055
# Read data from response.
5156
finally:
52-
response.close()
53-
response.release_conn()
57+
if response:
58+
response.close()
59+
response.release_conn()
5460

5561
# Get data of an SSE-C encrypted object.
62+
response = None
5663
try:
5764
response = client.get_object(
5865
"my-bucket", "my-object",
5966
ssec=SseCustomerKey(b"32byteslongsecretkeymustprovided"),
6067
)
6168
# Read data from response.
6269
finally:
63-
response.close()
64-
response.release_conn()
70+
if response:
71+
response.close()
72+
response.release_conn()

minio/api.py

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1187,44 +1187,52 @@ def get_object(
11871187
11881188
Example::
11891189
# Get data of an object.
1190+
response = None
11901191
try:
11911192
response = client.get_object("my-bucket", "my-object")
11921193
# Read data from response.
11931194
finally:
1194-
response.close()
1195-
response.release_conn()
1195+
if response:
1196+
response.close()
1197+
response.release_conn()
11961198
11971199
# Get data of an object of version-ID.
1200+
response = None
11981201
try:
11991202
response = client.get_object(
12001203
"my-bucket", "my-object",
12011204
version_id="dfbd25b3-abec-4184-a4e8-5a35a5c1174d",
12021205
)
12031206
# Read data from response.
12041207
finally:
1205-
response.close()
1206-
response.release_conn()
1208+
if response:
1209+
response.close()
1210+
response.release_conn()
12071211
12081212
# Get data of an object from offset and length.
1213+
response = None
12091214
try:
12101215
response = client.get_object(
12111216
"my-bucket", "my-object", offset=512, length=1024,
12121217
)
12131218
# Read data from response.
12141219
finally:
1215-
response.close()
1216-
response.release_conn()
1220+
if response:
1221+
response.close()
1222+
response.release_conn()
12171223
12181224
# Get data of an SSE-C encrypted object.
1225+
response = None
12191226
try:
12201227
response = client.get_object(
12211228
"my-bucket", "my-object",
12221229
ssec=SseCustomerKey(b"32byteslongsecretkeymustprovided"),
12231230
)
12241231
# Read data from response.
12251232
finally:
1226-
response.close()
1227-
response.release_conn()
1233+
if response:
1234+
response.close()
1235+
response.release_conn()
12281236
"""
12291237
check_bucket_name(bucket_name, s3_check=self._base_url.is_aws_host)
12301238
check_object_name(object_name)

0 commit comments

Comments
 (0)