More robust Hyprland backend

This commit is contained in:
gardenapple 2023-06-20 13:36:48 +03:00
parent d367b7e1d6
commit b163b21ace
No known key found for this signature in database
GPG Key ID: 30A642B65B1529FE

View File

@ -181,17 +181,21 @@ std::string IPC::getSocket1Reply(const std::string& rq) {
}
char buffer[8192] = {0};
std::string response;
sizeWritten = read(SERVERSOCKET, buffer, 8192);
do {
sizeWritten = read(SERVERSOCKET, buffer, 8192);
if (sizeWritten < 0) {
spdlog::error("Hyprland IPC: Couldn't read (5)");
return "";
}
if (sizeWritten < 0) {
spdlog::error("Hyprland IPC: Couldn't read (5)");
close(SERVERSOCKET);
return "";
}
response.append(buffer, sizeWritten);
} while (sizeWritten == 8192);
close(SERVERSOCKET);
return std::string(buffer);
return response;
}
} // namespace waybar::modules::hyprland