From 7671ccfbc6680a47de971c134e2b5e45b8ab4aa1 Mon Sep 17 00:00:00 2001 From: Dordovel Date: Tue, 29 Nov 2022 09:00:12 +0300 Subject: [PATCH] added file existence check --- src/modules/user.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/modules/user.cpp b/src/modules/user.cpp index eab1410..2c9f5b6 100644 --- a/src/modules/user.cpp +++ b/src/modules/user.cpp @@ -10,6 +10,7 @@ #include "gdkmm/cursor.h" #include "gdkmm/event.h" #include "gdkmm/types.h" +#include "glibmm/fileutils.h" #include "sigc++/functors/mem_fun.h" #include "sigc++/functors/ptr_fun.h" @@ -106,8 +107,12 @@ void User::init_default_user_avatar(int width, int height) { } void User::init_user_avatar(const std::string& path, int width, int height) { - Glib::RefPtr pixbuf_ = Gdk::Pixbuf::create_from_file(path, width, height); - AIconLabel::image_.set(pixbuf_); + if (Glib::file_test(path, Glib::FILE_TEST_EXISTS)) { + Glib::RefPtr pixbuf_ = Gdk::Pixbuf::create_from_file(path, width, height); + AIconLabel::image_.set(pixbuf_); + } else { + AIconLabel::box_.remove(AIconLabel::image_); + } } auto User::update() -> void {