[Spice-devel] [PATCH v3 3/5] Make CCD::load_api throw exception by its own
Frediano Ziglio
fziglio at redhat.com
Thu Sep 1 14:54:07 UTC 2016
Avoid to use two way to handle errors.
Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
---
vdagent/display_configuration.cpp | 19 +++++++------------
vdagent/display_configuration.h | 2 +-
2 files changed, 8 insertions(+), 13 deletions(-)
diff --git a/vdagent/display_configuration.cpp b/vdagent/display_configuration.cpp
index 29a1030..6e7624b 100644
--- a/vdagent/display_configuration.cpp
+++ b/vdagent/display_configuration.cpp
@@ -691,12 +691,8 @@ CCD::CCD()
,_primary_detached(false)
,_path_state(PATH_UPDATED)
{
- if (load_api()) {
- get_config_buffers();
- }
- else {
- throw std::exception();
- }
+ load_api();
+ get_config_buffers();
}
CCD::~CCD()
@@ -801,14 +797,13 @@ void CCD::debug_print_config(const char* prefix)
}
}
-bool CCD::load_api()
+void CCD::load_api()
{
HMODULE hModule = GetModuleHandle(L"user32.dll");
- if(!hModule) {
- return false;
+ if (!hModule) {
+ throw std::exception();
}
- bool bFound_all(false);
do {
if (!(_pfnGetDeviceInfo = (PDISPLAYCONFIG_GETDEVICEINFO)
GetProcAddress(hModule, "DisplayConfigGetDeviceInfo"))) {
@@ -829,11 +824,11 @@ bool CCD::load_api()
GetProcAddress(hModule, "SetDisplayConfig"))) {
break;
}
- bFound_all = true;
+ return;
}
while(0);
- return bFound_all;
+ throw std::exception();
}
bool CCD::get_config_buffers()
diff --git a/vdagent/display_configuration.h b/vdagent/display_configuration.h
index 7abf526..ef4f989 100644
--- a/vdagent/display_configuration.h
+++ b/vdagent/display_configuration.h
@@ -67,7 +67,7 @@ public:
void debug_print_config(const char* prefix = NULL);
private:
- bool load_api();
+ void load_api();
bool get_config_buffers();
void free_config_buffers();
bool is_device_path(LPCTSTR device_name, DISPLAYCONFIG_PATH_INFO* path);
--
2.7.4
More information about the Spice-devel
mailing list