From 84107bdd772255e735584b330d8521f52513ac28 Mon Sep 17 00:00:00 2001 From: Emmanuel Gil Peyrot Date: Wed, 4 Jul 2018 12:33:23 +0200 Subject: Factorise retrieving tmp_image_dir. --- poezio/config.py | 9 +++++++++ poezio/core/handlers.py | 14 ++++---------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/poezio/config.py b/poezio/config.py index 8549df71..5b99b293 100644 --- a/poezio/config.py +++ b/poezio/config.py @@ -507,6 +507,15 @@ def file_ok(filepath): return bool(val) +def get_image_cache(): + if not config.get('extract_inline_images'): + return None + tmp_dir = config.get('tmp_image_dir') + if tmp_dir: + return Path(tmp_dir) + return xdg.CACHE_HOME / 'images' + + def check_create_cache_dir(): """ create the cache directory if it doesn't exist diff --git a/poezio/core/handlers.py b/poezio/core/handlers.py index 380715fc..25cb15b3 100644 --- a/poezio/core/handlers.py +++ b/poezio/core/handlers.py @@ -30,7 +30,7 @@ from poezio import tabs from poezio import xhtml from poezio import multiuserchat as muc from poezio.common import safeJID -from poezio.config import config, CACHE_DIR +from poezio.config import config from poezio.core.structs import Status from poezio.contact import Resource from poezio.logger import logger @@ -274,9 +274,7 @@ class HandlerCore: use_xhtml = config.get_by_tabname('enable_xhtml_im', message['from'].bare) - tmp_dir = None - if config.get('extract_inline_images'): - tmp_dir = config.get('tmp_image_dir') or path.join(CACHE_DIR, 'images') + tmp_dir = config.get_image_cache() body = xhtml.get_body_from_message_stanza( message, use_xhtml=use_xhtml, @@ -668,9 +666,7 @@ class HandlerCore: self.core.events.trigger('muc_msg', message, tab) use_xhtml = config.get_by_tabname('enable_xhtml_im', room_from) - tmp_dir = None - if config.get('extract_inline_images'): - tmp_dir = config.get('tmp_image_dir') or path.join(CACHE_DIR, 'images') + tmp_dir = config.get_image_cache() body = xhtml.get_body_from_message_stanza( message, use_xhtml=use_xhtml, @@ -746,9 +742,7 @@ class HandlerCore: room_from = jid.bare use_xhtml = config.get_by_tabname('enable_xhtml_im', jid.bare) - tmp_dir = None - if config.get('extract_inline_images'): - tmp_dir = config.get('tmp_image_dir') or path.join(CACHE_DIR, 'images') + tmp_dir = config.get_image_cache() body = xhtml.get_body_from_message_stanza( message, use_xhtml=use_xhtml, -- cgit v1.2.3