Opened 11 years ago

Closed 11 years ago

#20427 closed Bug (fixed)

UnboundLocalError when file lock fails in storage.py

Reported by: mattias@… Owned by: nobody
Component: File uploads/storage Version: 1.5
Severity: Normal Keywords: storage.py, UnboundLocalError
Cc: Triage Stage: Accepted
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

After attempting to upload an image in the admin interface a received the following error:

UnboundLocalError at /admin/api/video/9/
local variable '_file' referenced before assignment

Origin of the error:
site-packages/django/core/files/storage.py in _save
209: if _file is not None:

Most likely the lock attempt in the try block fails because the write is on an NFS share and there is some issue with permissions or something.
I personally think that the script still shouldn't crash like this.

Change History (3)

comment:1 by Baptiste Mispelon, 11 years ago

Triage Stage: UnreviewedAccepted
Type: UncategorizedBug

Hi,

Thanks for your report, this looks indeed like a bug in the logic flow.

Your analysis is correct: this error will happen if the locking raises an exception.

comment:2 by Baptiste Mispelon, 11 years ago

For reference, it seems like this issue was introduced in commit 4e70ad11d29bde54b846920ce0dcf8d10741d3ae.

comment:3 by Claude Paroz <claude@…>, 11 years ago

Resolution: fixed
Status: newclosed

In 838f28974e0711f4184798ba5e54ad725bc112f0:

Fixed #20427 -- Moved a variable initialization in storage.py

This is fixing commit 4e70ad11d2. Thanks mattias at elements.nl
for the report and Baptiste Mispelon for identifying the faulty
commit.

Note: See TracTickets for help on using tickets.
Back to Top