From f0f1691bc741da48bc2e1adfa4535026ae42d6d3 Mon Sep 17 00:00:00 2001 From: Szczepan Zalega Date: Wed, 20 Jun 2018 12:03:28 +0200 Subject: Replace *out function parameter with return value Using return value instead of memory manipulation seem to be cleaner solution and less error prone due to avoiding pointer usage. Signed-off-by: Szczepan Zalega --- NK_C_API.cc | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) (limited to 'NK_C_API.cc') diff --git a/NK_C_API.cc b/NK_C_API.cc index 56340ac..d8b8168 100644 --- a/NK_C_API.cc +++ b/NK_C_API.cc @@ -238,28 +238,23 @@ extern "C" { } - NK_C_API bool NK_get_device_model(enum NK_device_model *out) { - if (out == nullptr) { - return false; - } + NK_C_API enum NK_device_model NK_get_device_model() { auto m = NitrokeyManager::instance(); try { auto model = m->get_connected_device_model(); switch (model) { case DeviceModel::PRO: - *out = NK_PRO; - return true; + return NK_PRO; case DeviceModel::STORAGE: - *out = NK_STORAGE; - return true; + return NK_STORAGE; default: - /* unknown device -- should not happen */ - return false; + /* unknown or not connected device */ + return NK_device_model::NK_DISCONNECTED; } } catch (const DeviceNotConnected& e) { - return false; + return NK_device_model::NK_DISCONNECTED; } - } +} void clear_string(std::string &s) { -- cgit v1.2.1