Thank you! Fixed in trunk.

On Jun 16, 3:55 am, Corne Dickens <corne.dick...@gmail.com> wrote:
> web2py Version 1.96.4 under sl4a (android / python 2.6.2) does not
> start due to a few errors.
>
> The first one is in dal.py
> It seems that there was already half fixed, the problem is in
> path_encoding = sys.getfilesystemencoding() or
> locale.getdefaultlocale()[1]
> the result is empty here.
>
> There is one place in the code where this was fixed already (with an
> additional or 'utf8'), this fix should also go to the other places
> where the same structure is used.
>
> PATCH
> diff -U 3 -H -d -r -N -- web2py/gluon/dal.py web2py_droid/gluon/dal.py
> --- web2py/gluon/dal.py 2011-06-07 22:07:48.000000000 +0200
> +++ web2py_droid/gluon/dal.py   2011-06-16 10:14:49.677764405 +0200
> @@ -1487,7 +1487,7 @@
>          self.folder = folder
>          self.db_codec = db_codec
>          self.find_or_make_work_folder()
> -        path_encoding = sys.getfilesystemencoding() or
> locale.getdefaultlocale()[1]
> +        path_encoding = sys.getfilesystemencoding() or
> locale.getdefaultlocale()[1] or 'utf8'
>          if uri.startswith('sqlite:memory'):
>              dbpath = ':memory:'
>          else:
> @@ -1523,7 +1523,7 @@
>          self.folder = folder
>          self.db_codec = db_codec
>          self.find_or_make_work_folder()
> -        path_encoding = sys.getfilesystemencoding() or
> locale.getdefaultlocale()[1]
> +        path_encoding = sys.getfilesystemencoding() or
> locale.getdefaultlocale()[1] or 'utf8'
>          if uri.startswith('sqlite:memory'):
>              dbpath = ':memory:'
>          else:
>
> The second thing is in cache.py
> os.unlink(self.shelve_name) gives an exception because the file is not
> found.
> In the code there is an if statement which is True when the file does
> not exist.
> In the if there is an open for reading, which failes in case the file
> does not exist, deleting the file will in that case also fail..
>
> PATCH
> diff -U 3 -H -d -r -N -- web2py_unicode/gluon/cache.py web2py_droid/
> gluon/cache.py
> --- web2py_unicode/gluon/cache.py       2011-06-07 22:07:48.000000000 +0200
> +++ web2py_droid/gluon/cache.py 2011-06-16 10:35:38.625610104 +0200
> @@ -257,7 +257,10 @@
>              except:
>                  logger.error('corrupted file %s, deleting it!' \
>                                   % self.shelve_name)
> -                os.unlink(self.shelve_name)
> +               try:
> +                   os.unlink(self.shelve_name)
> +               except:
> +                   pass # open could fail in case the fail doensn't exist.. 
> Unlink
> will fail than also...
>              if locker_locked:
>                  portalocker.unlock(locker)
>              if locker:

Reply via email to