From b11cb28ff3a18ef089c72261ddac006314c218a4 Mon Sep 17 00:00:00 2001 From: Simon Conseil Date: Mon, 18 Jan 2016 22:21:28 +0100 Subject: [PATCH] Catch cPickle.PicklingError on python 2 (#191). --- sigal/compat.py | 6 ++++++ sigal/gallery.py | 3 +-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/sigal/compat.py b/sigal/compat.py index 68027fc..75fe51a 100644 --- a/sigal/compat.py +++ b/sigal/compat.py @@ -34,6 +34,7 @@ if not PY2: from http import server from urllib.parse import quote as url_quote import socketserver + import pickle else: text_type = unicode # NOQA string_types = (str, unicode) # NOQA @@ -46,6 +47,11 @@ else: import SimpleHTTPServer as server # NOQA import SocketServer as socketserver # NOQA + try: + import cPickle as pickle + except: + import pickle + class UnicodeMixin(object): if not PY2: diff --git a/sigal/gallery.py b/sigal/gallery.py index dfadf63..e671762 100644 --- a/sigal/gallery.py +++ b/sigal/gallery.py @@ -29,7 +29,6 @@ import fnmatch import logging import multiprocessing import os -import pickle import sys import zipfile @@ -40,7 +39,7 @@ from itertools import cycle from os.path import isfile, join, splitext from . import image, video, signals -from .compat import PY2, UnicodeMixin, strxfrm, url_quote, text_type +from .compat import PY2, UnicodeMixin, strxfrm, url_quote, text_type, pickle from .image import process_image, get_exif_tags, get_exif_data, get_size from .settings import get_thumb from .utils import (Devnull, copy, check_or_create_dir, url_from_path,