diff options
author | Vitaly Takmazov <vitalyster@gmail.com> | 2022-01-30 18:54:08 +0300 |
---|---|---|
committer | Vitaly Takmazov <vitalyster@gmail.com> | 2022-01-30 18:54:08 +0300 |
commit | 5ef365b2552153b0bf142cfd5a679c5154f0aaf1 (patch) | |
tree | 5ee5c16e90c3cd60c71e72c99b38377403e458d7 | |
parent | 6899cb74c30174040bc74dfcabbc9abaf1c1d361 (diff) |
libpurple: do not crash on filetransfers with empty filename
-rw-r--r-- | backends/libpurple/main.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/backends/libpurple/main.cpp b/backends/libpurple/main.cpp index 541f8e47..86aff002 100644 --- a/backends/libpurple/main.cpp +++ b/backends/libpurple/main.cpp @@ -1982,7 +1982,9 @@ static void XferCreated(PurpleXfer *xfer) { PurpleAccount *account = purple_xfer_get_account_wrapped(xfer); if (np->m_accounts.find(account) != np->m_accounts.end()) { - np->handleFTStart(np->m_accounts[account], xfer->who ? xfer->who : "", purple_xfer_get_filename_wrapped(xfer), purple_xfer_get_size_wrapped(xfer)); + const char * filenameData = purple_xfer_get_filename_wrapped(xfer); + std::string filename(filenameData ? filenameData : ""); + np->handleFTStart(np->m_accounts[account], xfer->who ? xfer->who : "", filename, purple_xfer_get_size_wrapped(xfer)); } } |