[Libreoffice-commits] .: Branch 'libreoffice-4-0' - python3/python-3.3.0-15833.patch.1 python3/UnpackedTarball_python3.mk

Norbert Thiebaud nthiebaud at gmail.com
Thu Jan 31 02:43:42 PST 2013


 python3/UnpackedTarball_python3.mk |    6 ++++++
 python3/python-3.3.0-15833.patch.1 |   25 +++++++++++++++++++++++++
 2 files changed, 31 insertions(+)

New commits:
commit 1ecd52e7edeea6be5df23cf75b7e649a60a1c265
Author: Norbert Thiebaud <nthiebaud at gmail.com>
Date:   Thu Jan 31 04:12:46 2013 -0600

    python3: bug 15833
    
    That python bug cause problems when libreoffice is on a read-only
    media... which is very common for Mac as the dmg used to package
    the produce is seens as a read only volume.
    This patch the bug 15833 for MacOSX only since that is the platform that
    is most likely to be impacted, and because of bug 15431 that make
    patching on Windows more complex/dangerous.
    
    Change-Id: Ie7406c1c75748d38c871b3b544560caa62e9d838
    Reviewed-on: https://gerrit.libreoffice.org/1935
    Reviewed-by: Norbert Thiebaud <nthiebaud at gmail.com>
    Tested-by: Norbert Thiebaud <nthiebaud at gmail.com>

diff --git a/python3/UnpackedTarball_python3.mk b/python3/UnpackedTarball_python3.mk
index 840108b..eb07def 100644
--- a/python3/UnpackedTarball_python3.mk
+++ b/python3/UnpackedTarball_python3.mk
@@ -32,4 +32,10 @@ $(eval $(call gb_UnpackedTarball_add_patches,python3,\
 	python3/python-3.3.0-ffi-clang.patch.1 \
 ))
 
+ifeq ($(OS),MACOSX)
+$(eval $(call gb_UnpackedTarball_add_patches,python3,\
+	python3/python-3.3.0-15833.patch.1 \
+))
+endif
+
 # vim: set noet sw=4 ts=4:
diff --git a/python3/python-3.3.0-15833.patch.1 b/python3/python-3.3.0-15833.patch.1
new file mode 100644
index 0000000..71cef94
--- /dev/null
+++ b/python3/python-3.3.0-15833.patch.1
@@ -0,0 +1,25 @@
+iff --git a/Lib/importlib/_bootstrap.py b/Lib/importlib/_bootstrap.py
+--- a/Lib/importlib/_bootstrap.py
++++ b/Lib/importlib/_bootstrap.py
+@@ -1066,17 +1066,17 @@ class SourceFileLoader(FileLoader, Sourc
+             except FileExistsError:
+                 # Probably another Python process already created the dir.
+                 continue
+-            except PermissionError:
+-                # If can't get proper access, then just forget about writing
+-                # the data.
++            except OSError as exc:
++                # Could be a permission error, read-only filesystem: just forget
++                # about writing the data.
++                _verbose_message('could not create {!r}: {!r}', parent, exc)
+                 return
+         try:
+             _write_atomic(path, data, _mode)
+             _verbose_message('created {!r}', path)
+-        except (PermissionError, FileExistsError):
+-            # Don't worry if you can't write bytecode or someone is writing
+-            # it at the same time.
+-            pass
++        except OSError as exc:
++            # Same as above: just don't write the bytecode.
++            _verbose_message('could not create {!r}: {!r}', path, exc)


More information about the Libreoffice-commits mailing list