From 1dded4f572ffed113f8d185efbfbccefa6ff6d34 Mon Sep 17 00:00:00 2001 From: Thomas Kluyver Date: Fri, 16 Feb 2018 14:30:26 +0000 Subject: [PATCH] Raise TrashPermissionError from gio backend (#22) --- send2trash/plat_gio.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/send2trash/plat_gio.py b/send2trash/plat_gio.py index 13e99b4..6184d80 100644 --- a/send2trash/plat_gio.py +++ b/send2trash/plat_gio.py @@ -5,10 +5,15 @@ # http://www.hardcoded.net/licenses/bsd_license from gi.repository import GObject, Gio +from .exceptions import TrashPermissionError def send2trash(path): try: f = Gio.File.new_for_path(path) f.trash(cancellable=None) except GObject.GError as e: + if e.code == Gio.IOErrorEnum.NOT_SUPPORTED: + # We get here if we can't create a trash directory on the same + # device. I don't know if other errors can result in NOT_SUPPORTED. + raise TrashPermissionError('') raise OSError(e.message)