softashell / iqdb_tagger

Search IQDB from CLI
MIT License
9 stars 5 forks source link

"Permission denied" error while trying to create temporary file on Windows #9

Closed AlexCSDev closed 5 years ago

AlexCSDev commented 5 years ago

Hello, iqdb_tagger crashes on Windows during file upload procedure. I've been able to fix that on my copy by adding "delete=False" to NamedTemporaryFile parameters but I'm not a python developer so I don't know if this is a good fix or not.

ERROR:flask.app:Exception on / [POST]
Traceback (most recent call last):
  File "c:\users\~~~~\appdata\local\programs\python\python37-32\lib\site-packages\flask-1.0.3-py3.7.egg\flask\app.py", line 2311, in wsgi_app
    response = self.full_dispatch_request()
  File "c:\users\~~~~\appdata\local\programs\python\python37-32\lib\site-packages\flask-1.0.3-py3.7.egg\flask\app.py", line 1834, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "c:\users\~~~~\appdata\local\programs\python\python37-32\lib\site-packages\flask_restful-0.3.6-py3.7.egg\flask_restful\__init__.py", line 273, in error_router
    return original_handler(e)
  File "c:\users\~~~~\appdata\local\programs\python\python37-32\lib\site-packages\flask-1.0.3-py3.7.egg\flask\app.py", line 1737, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "c:\users\~~~~\appdata\local\programs\python\python37-32\lib\site-packages\flask-1.0.3-py3.7.egg\flask\_compat.py", line 36, in reraise
    raise value
  File "c:\users\~~~~\appdata\local\programs\python\python37-32\lib\site-packages\flask-1.0.3-py3.7.egg\flask\app.py", line 1832, in full_dispatch_request
    rv = self.dispatch_request()
  File "c:\users\~~~~\appdata\local\programs\python\python37-32\lib\site-packages\flask-1.0.3-py3.7.egg\flask\app.py", line 1818, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "c:\users\~~~~\appdata\local\programs\python\python37-32\lib\site-packages\flask_admin-1.5.3-py3.7.egg\flask_admin\base.py", line 69, in inner
    return self._run_view(f, *args, **kwargs)
  File "c:\users\~~~~\appdata\local\programs\python\python37-32\lib\site-packages\flask_admin-1.5.3-py3.7.egg\flask_admin\base.py", line 368, in _run_view
    return fn(self, *args, **kwargs)
  File "c:\users\~~~~\appdata\local\programs\python\python37-32\lib\site-packages\iqdb_tagger\views.py", line 33, in index
    form.file.data.save(temp.name)
  File "c:\users\~~~~\appdata\local\programs\python\python37-32\lib\site-packages\werkzeug\datastructures.py", line 2799, in save
    dst = open(dst, "wb")
PermissionError: [Errno 13] Permission denied: 'C:\\Users\\~~~~\\AppData\\Local\\Temp\\tmpc_41uzok'
rachmadaniHaryono commented 5 years ago

@Megalan thank you for the report. your fix is actually correct and i added that to the program.

i will release minor version next week on pypi

if you need it right now, you can try this

https://www.freecodecamp.org/news/how-to-use-github-as-a-pypi-server-1c3b0d07db2/