redraw_fixer: a couple of style fixes
[staging/windowmanager.git] / src / util.cpp
index 1837936..c178d90 100644 (file)
 
 #include <unistd.h>
 
-void Poller::add_fd(int fd, std::function<int(int)> handler) {
-   pfds.emplace_back(pollfd{.fd = fd, .events = POLLIN, .revents = 0});
-   handlers.emplace_back(std::move(handler));
-}
-
-int Poller::check_events() {
-   int ret = 0;
-   if ((ret = poll(this->pfds.data(), this->pfds.size(), -1)) != -1 &&
-       errno != EINTR) {
-      for (unsigned i = 0; i < pfds.size(); i++) {
-         if ((pfds[i].revents & POLLIN) != 0) {
-            if (handlers[i](pfds[i].fd) == -1) {
-               return -1;
-            }
-            pfds[i].revents = 0;
-            pfds[i].events = POLLIN;
-         }
-      }
-   }
-   return ret;
+#ifdef SCOPE_TRACING
+thread_local int ScopeTrace::indent = 0;
+ScopeTrace::ScopeTrace(char const *func) : f(func) {
+   fprintf(stderr, "%lu %*s%s -->\n", pthread_self(), 2 * indent++, "", this->f);
 }
+ScopeTrace::~ScopeTrace() { fprintf(stderr, "%lu %*s%s <--\n", pthread_self(), 2 * --indent, "", this->f); }
+#endif
 
 unique_fd::~unique_fd() {
    if (this->fd != -1) {