From 726d736aace4ffac0b2fccb6c1c2fc95a74b737a Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 5 Feb 2021 10:34:17 +0530 Subject: [PATCH] Type check return value of cache_dir --- kitty/disk-cache.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/kitty/disk-cache.c b/kitty/disk-cache.c index 15663d61e..5d864ead0 100644 --- a/kitty/disk-cache.c +++ b/kitty/disk-cache.c @@ -403,8 +403,10 @@ ensure_state(DiskCache *self) { if (kc) { cache_dir = PyObject_CallMethod(kc, "cache_dir", NULL); if (cache_dir) { - self->cache_dir = strdup(PyUnicode_AsUTF8(cache_dir)); - if (!self->cache_dir) PyErr_NoMemory(); + if (PyUnicode_Check(cache_dir)) { + self->cache_dir = strdup(PyUnicode_AsUTF8(cache_dir)); + if (!self->cache_dir) PyErr_NoMemory(); + } else PyErr_SetString(PyExc_TypeError, "cache_dir() did not return a string"); } } Py_CLEAR(kc); Py_CLEAR(cache_dir);