mirror of
https://github.com/hyprwm/Hyprland
synced 2024-11-29 23:45:58 +01:00
use C++ throw methods instead of printf and exit
This commit is contained in:
parent
9655d0c138
commit
0d7a8cca79
3 changed files with 8 additions and 15 deletions
|
@ -28,23 +28,20 @@ CCompositor::CCompositor() {
|
||||||
|
|
||||||
if (!m_sWLRBackend) {
|
if (!m_sWLRBackend) {
|
||||||
Debug::log(CRIT, "m_sWLRBackend was NULL!");
|
Debug::log(CRIT, "m_sWLRBackend was NULL!");
|
||||||
RIP("m_sWLRBackend NULL!");
|
throw std::runtime_error("wlr_backend_autocreate() failed!");
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
m_iDRMFD = wlr_backend_get_drm_fd(m_sWLRBackend);
|
m_iDRMFD = wlr_backend_get_drm_fd(m_sWLRBackend);
|
||||||
if (m_iDRMFD < 0) {
|
if (m_iDRMFD < 0) {
|
||||||
Debug::log(CRIT, "Couldn't query the DRM FD!");
|
Debug::log(CRIT, "Couldn't query the DRM FD!");
|
||||||
RIP("DRMFD NULL!");
|
throw std::runtime_error("wlr_backend_get_drm_fd() failed!");
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
m_sWLRRenderer = wlr_gles2_renderer_create_with_drm_fd(m_iDRMFD);
|
m_sWLRRenderer = wlr_gles2_renderer_create_with_drm_fd(m_iDRMFD);
|
||||||
|
|
||||||
if (!m_sWLRRenderer) {
|
if (!m_sWLRRenderer) {
|
||||||
Debug::log(CRIT, "m_sWLRRenderer was NULL!");
|
Debug::log(CRIT, "m_sWLRRenderer was NULL!");
|
||||||
RIP("m_sWLRRenderer NULL!");
|
throw std::runtime_error("wlr_gles2_renderer_create_with_drm_fd() failed!");
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
wlr_renderer_init_wl_display(m_sWLRRenderer, m_sWLDisplay);
|
wlr_renderer_init_wl_display(m_sWLRRenderer, m_sWLDisplay);
|
||||||
|
@ -53,16 +50,14 @@ CCompositor::CCompositor() {
|
||||||
|
|
||||||
if (!m_sWLRAllocator) {
|
if (!m_sWLRAllocator) {
|
||||||
Debug::log(CRIT, "m_sWLRAllocator was NULL!");
|
Debug::log(CRIT, "m_sWLRAllocator was NULL!");
|
||||||
RIP("m_sWLRAllocator NULL!");
|
throw std::runtime_error("wlr_allocator_autocreate() failed!");
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
m_sWLREGL = wlr_gles2_renderer_get_egl(m_sWLRRenderer);
|
m_sWLREGL = wlr_gles2_renderer_get_egl(m_sWLRRenderer);
|
||||||
|
|
||||||
if (!m_sWLREGL) {
|
if (!m_sWLREGL) {
|
||||||
Debug::log(CRIT, "m_sWLREGL was NULL!");
|
Debug::log(CRIT, "m_sWLREGL was NULL!");
|
||||||
RIP("m_sWLREGL NULL!");
|
throw std::runtime_error("wlr_gles2_renderer_get_egl() failed!");
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
m_sWLRCompositor = wlr_compositor_create(m_sWLDisplay, m_sWLRRenderer);
|
m_sWLRCompositor = wlr_compositor_create(m_sWLDisplay, m_sWLRRenderer);
|
||||||
|
@ -248,7 +243,7 @@ void CCompositor::startCompositor() {
|
||||||
if (!m_szWLDisplaySocket) {
|
if (!m_szWLDisplaySocket) {
|
||||||
Debug::log(CRIT, "m_szWLDisplaySocket NULL!");
|
Debug::log(CRIT, "m_szWLDisplaySocket NULL!");
|
||||||
wlr_backend_destroy(m_sWLRBackend);
|
wlr_backend_destroy(m_sWLRBackend);
|
||||||
RIP("m_szWLDisplaySocket NULL!");
|
throw std::runtime_error("m_szWLDisplaySocket was null! (wl_display_add_socket_auto failed)");
|
||||||
}
|
}
|
||||||
|
|
||||||
setenv("WAYLAND_DISPLAY", m_szWLDisplaySocket, 1);
|
setenv("WAYLAND_DISPLAY", m_szWLDisplaySocket, 1);
|
||||||
|
@ -261,7 +256,7 @@ void CCompositor::startCompositor() {
|
||||||
Debug::log(CRIT, "Backend did not start!");
|
Debug::log(CRIT, "Backend did not start!");
|
||||||
wlr_backend_destroy(m_sWLRBackend);
|
wlr_backend_destroy(m_sWLRBackend);
|
||||||
wl_display_destroy(m_sWLDisplay);
|
wl_display_destroy(m_sWLDisplay);
|
||||||
RIP("Backend did not start!");
|
throw std::runtime_error("The backend could not start!");
|
||||||
}
|
}
|
||||||
|
|
||||||
wlr_xcursor_manager_set_cursor_image(m_sWLRXCursorMgr, "left_ptr", m_sWLRCursor);
|
wlr_xcursor_manager_set_cursor_image(m_sWLRXCursorMgr, "left_ptr", m_sWLRCursor);
|
||||||
|
|
|
@ -16,8 +16,6 @@
|
||||||
#define ISDEBUG false
|
#define ISDEBUG false
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define RIP(format, ... ) { fprintf(stderr, format "\n", ##__VA_ARGS__); exit(EXIT_FAILURE); }
|
|
||||||
|
|
||||||
#define LISTENER(name) void listener_##name(wl_listener*, void*); inline wl_listener listen_##name = { .notify = listener_##name };
|
#define LISTENER(name) void listener_##name(wl_listener*, void*); inline wl_listener listen_##name = { .notify = listener_##name };
|
||||||
#define DYNLISTENFUNC(name) void listener_##name(void*, void*);
|
#define DYNLISTENFUNC(name) void listener_##name(void*, void*);
|
||||||
#define DYNLISTENER(name) CHyprWLListener hyprListener_##name;
|
#define DYNLISTENER(name) CHyprWLListener hyprListener_##name;
|
||||||
|
|
|
@ -12,7 +12,7 @@ bool ignoreSudo = false;
|
||||||
int main(int argc, char** argv) {
|
int main(int argc, char** argv) {
|
||||||
|
|
||||||
if (!getenv("XDG_RUNTIME_DIR"))
|
if (!getenv("XDG_RUNTIME_DIR"))
|
||||||
RIP("XDG_RUNTIME_DIR not set!");
|
throw std::runtime_error("XDG_RUNTIME_DIR is not set!");
|
||||||
|
|
||||||
// parse some args
|
// parse some args
|
||||||
for (int i = 1; i < argc; ++i) {
|
for (int i = 1; i < argc; ++i) {
|
||||||
|
|
Loading…
Reference in a new issue