From b1aeaa3dcc115fd9540a1b776d4aad478c778597 Mon Sep 17 00:00:00 2001 From: Charles Kerr Date: Sun, 14 Nov 2021 22:49:56 -0600 Subject: [PATCH] refactor: remove tr_variantDictFindStr() from transmission-daemon (#2165) * refactor: remove tr_variantDictFindStr from transmission-daemon --- daemon/daemon.cc | 18 ++++++++---------- libtransmission/watchdir.cc | 4 ++-- libtransmission/watchdir.h | 4 +++- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/daemon/daemon.cc b/daemon/daemon.cc index 0c7a12cb4..a38712bd7 100644 --- a/daemon/daemon.cc +++ b/daemon/daemon.cc @@ -725,19 +725,17 @@ static int daemon_start(void* varg, [[maybe_unused]] bool foreground) /* maybe add a watchdir */ if (tr_variantDictFindBool(settings, TR_KEY_watch_dir_enabled, &boolVal) && boolVal) { - char const* dir; - bool force_generic; + auto force_generic = bool{ false }; + (void)tr_variantDictFindBool(settings, key_watch_dir_force_generic, &force_generic); - if (!tr_variantDictFindBool(settings, key_watch_dir_force_generic, &force_generic)) + auto dir = std::string_view{}; + (void)tr_variantDictFindStrView(settings, TR_KEY_watch_dir, &dir); + if (!std::empty(dir)) { - force_generic = false; - } + tr_logAddInfo("Watching \"%" TR_PRIsv "\" for new .torrent files", TR_PRIsv_ARG(dir)); - if (tr_variantDictFindStr(settings, TR_KEY_watch_dir, &dir, nullptr) && !tr_str_is_empty(dir)) - { - tr_logAddInfo("Watching \"%s\" for new .torrent files", dir); - - if ((watchdir = tr_watchdir_new(dir, &onFileAdded, mySession, ev_base, force_generic)) == nullptr) + watchdir = tr_watchdir_new(dir, &onFileAdded, mySession, ev_base, force_generic); + if (watchdir == nullptr) { goto CLEANUP; } diff --git a/libtransmission/watchdir.cc b/libtransmission/watchdir.cc index 5a2bacebc..f15a9445a 100644 --- a/libtransmission/watchdir.cc +++ b/libtransmission/watchdir.cc @@ -216,14 +216,14 @@ static void tr_watchdir_retry_restart(tr_watchdir_retry* retry) ***/ tr_watchdir_t tr_watchdir_new( - char const* path, + std::string_view path, tr_watchdir_cb callback, void* callback_user_data, struct event_base* event_base, bool force_generic) { auto* handle = tr_new0(struct tr_watchdir, 1); - handle->path = tr_strdup(path); + handle->path = tr_strvDup(path); handle->callback = callback; handle->callback_user_data = callback_user_data; handle->event_base = event_base; diff --git a/libtransmission/watchdir.h b/libtransmission/watchdir.h index cd1535a94..a18b52186 100644 --- a/libtransmission/watchdir.h +++ b/libtransmission/watchdir.h @@ -8,6 +8,8 @@ #pragma once +#include + #include "tr-macros.h" struct event_base; @@ -26,7 +28,7 @@ using tr_watchdir_cb = tr_watchdir_status (*)(tr_watchdir_t handle, char const* /* ... */ tr_watchdir_t tr_watchdir_new( - char const* path, + std::string_view path, tr_watchdir_cb callback, void* callback_user_data, struct event_base* event_base,