Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
L
libzmq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
libzmq
Commits
7893a6ac
Commit
7893a6ac
authored
Dec 21, 2015
by
Pieter Hintjens
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Problem: zmq poller API is not CLASS conformant
Solution: change zmq_poller_close(p) to zmq_poller_destroy(&p)
parent
f8b9ca5f
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
10 additions
and
8 deletions
+10
-8
zmq.h
include/zmq.h
+3
-3
zmq.cpp
src/zmq.cpp
+6
-4
test_poller.cpp
tests/test_poller.cpp
+1
-1
No files found.
include/zmq.h
View file @
7893a6ac
...
...
@@ -434,8 +434,8 @@ typedef struct zmq_poller_event_t
short
events
;
}
zmq_poller_event_t
;
ZMQ_EXPORT
void
*
zmq_poller_new
();
ZMQ_EXPORT
int
zmq_poller_
close
(
void
*
poller
);
ZMQ_EXPORT
void
*
zmq_poller_new
(
void
);
ZMQ_EXPORT
int
zmq_poller_
destroy
(
void
**
poller_p
);
ZMQ_EXPORT
int
zmq_poller_add
(
void
*
poller
,
void
*
socket
,
void
*
user_data
,
short
events
);
ZMQ_EXPORT
int
zmq_poller_modify
(
void
*
poller
,
void
*
socket
,
short
events
);
ZMQ_EXPORT
int
zmq_poller_remove
(
void
*
poller
,
void
*
socket
);
...
...
@@ -458,7 +458,7 @@ ZMQ_EXPORT int zmq_poller_remove_fd (void *poller, int fd);
typedef
void
(
zmq_timer_fn
)(
int
timer_id
,
void
*
arg
);
ZMQ_EXPORT
void
*
zmq_timers_new
(
void
);
ZMQ_EXPORT
int
zmq_timers_destroy
(
void
**
timers
);
ZMQ_EXPORT
int
zmq_timers_destroy
(
void
**
timers
_p
);
ZMQ_EXPORT
int
zmq_timers_add
(
void
*
timers
,
size_t
interval
,
zmq_timer_fn
handler
,
void
*
arg
);
ZMQ_EXPORT
int
zmq_timers_cancel
(
void
*
timers
,
int
timer_id
);
ZMQ_EXPORT
int
zmq_timers_set_interval
(
void
*
timers
,
int
timer_id
,
size_t
interval
);
...
...
src/zmq.cpp
View file @
7893a6ac
...
...
@@ -1045,21 +1045,23 @@ int zmq_poll (zmq_pollitem_t *items_, int nitems_, long timeout_)
// The poller functionality
void
*
zmq_poller_new
(
)
void
*
zmq_poller_new
(
void
)
{
zmq
::
socket_poller_t
*
poller
=
new
(
std
::
nothrow
)
zmq
::
socket_poller_t
;
alloc_assert
(
poller
);
return
poller
;
}
int
zmq_poller_
close
(
void
*
poller
_
)
int
zmq_poller_
destroy
(
void
**
poller_p
_
)
{
if
(
!
poller_
||
!
((
zmq
::
socket_poller_t
*
)
poller_
)
->
check_tag
())
{
void
*
poller
=
*
poller_p_
;
if
(
!
poller
||
!
((
zmq
::
socket_poller_t
*
)
poller
)
->
check_tag
())
{
errno
=
EFAULT
;
return
-
1
;
}
delete
((
zmq
::
socket_poller_t
*
)
poller_
);
delete
((
zmq
::
socket_poller_t
*
)
poller
);
*
poller_p_
=
NULL
;
return
0
;
}
...
...
tests/test_poller.cpp
View file @
7893a6ac
...
...
@@ -134,7 +134,7 @@ int main (void)
assert
(
event
.
events
==
ZMQ_POLLOUT
);
// Destory poller, sockets and ctx
rc
=
zmq_poller_
close
(
poller
);
rc
=
zmq_poller_
destroy
(
&
poller
);
assert
(
rc
==
0
);
rc
=
zmq_close
(
sink
);
assert
(
rc
==
0
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment