aboutsummaryrefslogtreecommitdiff
path: root/include/libssh
diff options
context:
space:
mode:
authorAndreas Schneider <asn@cryptomilk.org>2016-11-05 20:00:02 +0100
committerAndreas Schneider <asn@cryptomilk.org>2016-11-05 20:00:02 +0100
commit5437deed1bd026ae00a2fb9209b6a87807fa358b (patch)
tree89f31f4a2626ccd6ad12effb78ed7720e6baf691 /include/libssh
parent422271bd40d3b2d89fd02232b715385286ce032a (diff)
downloadlibssh-5437deed1bd026ae00a2fb9209b6a87807fa358b.tar.gz
libssh-5437deed1bd026ae00a2fb9209b6a87807fa358b.tar.xz
libssh-5437deed1bd026ae00a2fb9209b6a87807fa358b.zip
callbacks: Add support for MSVC
__typeof__ is GCC specific Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'include/libssh')
-rw-r--r--include/libssh/callbacks.h8
1 files changed, 3 insertions, 5 deletions
diff --git a/include/libssh/callbacks.h b/include/libssh/callbacks.h
index c273cb0b..4e71b3b9 100644
--- a/include/libssh/callbacks.h
+++ b/include/libssh/callbacks.h
@@ -487,14 +487,12 @@ typedef struct ssh_socket_callbacks_struct *ssh_socket_callbacks;
do { \
struct ssh_iterator *_cb_i = ssh_list_get_iterator(_cb_list); \
_cb_type _cb; \
- __typeof__(_cb->_cb_name) _cb_p; \
for (; _cb_i != NULL; _cb_i = _cb_i->next) { \
_cb = ssh_iterator_value(_cb_type, _cb_i); \
- if (ssh_callbacks_exists(_cb, _cb_name) && \
- (_cb_p = _cb->_cb_name))
+ if (ssh_callbacks_exists(_cb, _cb_name))
-#define ssh_callbacks_iterate_exec(...) \
- _cb_p(__VA_ARGS__, _cb->userdata)
+#define ssh_callbacks_iterate_exec(_cb_name, ...) \
+ _cb->_cb_name(__VA_ARGS__, _cb->userdata)
#define ssh_callbacks_iterate_end() \
} \