chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
0721804
)
bus: poll() on the right fds in proxyd
author
Lennart Poettering
<lennart@poettering.net>
Sat, 21 Dec 2013 16:46:35 +0000
(17:46 +0100)
committer
Lennart Poettering
<lennart@poettering.net>
Sat, 21 Dec 2013 16:54:29 +0000
(17:54 +0100)
src/bus-proxyd/bus-proxyd.c
patch
|
blob
|
history
diff --git
a/src/bus-proxyd/bus-proxyd.c
b/src/bus-proxyd/bus-proxyd.c
index d8caf406c7155d103be00f15e5dbddd202450884..91472d93f1976aea0c26bb839a39626207596a71 100644
(file)
--- a/
src/bus-proxyd/bus-proxyd.c
+++ b/
src/bus-proxyd/bus-proxyd.c
@@
-266,6
+266,7
@@
int main(int argc, char *argv[]) {
int events_a, events_b, fd;
uint64_t timeout_a, timeout_b, t;
struct timespec _ts, *ts;
int events_a, events_b, fd;
uint64_t timeout_a, timeout_b, t;
struct timespec _ts, *ts;
+ struct pollfd *pollfd;
int k;
r = sd_bus_process(a, &m);
int k;
r = sd_bus_process(a, &m);
@@
-374,14
+375,13
@@
int main(int argc, char *argv[]) {
ts = timespec_store(&_ts, t);
}
ts = timespec_store(&_ts, t);
}
- {
- struct pollfd p[3] = {
-
{.fd = fd, .events = events_a,
},
- {.fd = STDIN_FILENO, .events = events_b & POLLIN, },
-
{.fd = STDOUT_FILENO, .events = events_b & POLLOUT, }
};
+
pollfd = (struct pollfd[3])
{
+ {.fd = fd, .events = events_a, },
+
{.fd = in_fd, .events = events_b & POLLIN,
},
+ {.fd = out_fd, .events = events_b & POLLOUT, }
+ };
- r = ppoll(p, ELEMENTSOF(p), ts, NULL);
- }
+ r = ppoll(pollfd, 3, ts, NULL);
if (r < 0) {
log_error("ppoll() failed: %m");
goto finish;
if (r < 0) {
log_error("ppoll() failed: %m");
goto finish;