David Nikdel
b8d2c0c600
fix casting
2016-07-14 23:49:31 -04:00
David Nikdel
5042b699bd
create libuv.h based on libev.h
2016-07-14 23:30:43 -04:00
Martijn Otto
fe01610e96
Merge pull request #81 from theirix/shared-cmake
...
Build shared library with CMake
2016-07-11 09:32:38 +02:00
theirix
fbe287c795
Build shared library with CMake
...
Added option BUILD_SHARED to build shared library instead of static.
2016-07-10 22:24:24 +03:00
theirix
66f2001c7b
Avoid SIGPIPE on OS X without MSG_NOSIGNAL
...
OS X does not have Linux-specific option MSG_NOSIGNAL.
SIGPIPE can be avoided on OS X by using sockopt SO_NOSIGPIPE.
Credits: https://noahdesu.github.io/2014/01/16/port-sendmsg.html
2016-07-10 21:44:14 +03:00
Rafal Goslawski
14acb6bbed
Bump version to 2.6.1
2016-07-08 15:20:57 +02:00
David van Erkelens
ad9171f226
Changed writev to sendmsg to prevent SIGPIPE errors
2016-07-06 14:08:45 +02:00
Emiel Bruijntjes
aad09a1dd2
work in progress to prevent SIGPIPE signals (this is going to fix #79 )
2016-07-06 13:03:51 +02:00
David van Erkelens
dddd16b74d
Make sure single gets are processed correctly as well
2016-07-05 16:39:12 +02:00
Martijn Otto
28d440449d
Merge pull request #78 from maxim-ky/master
...
Add ln --relative to Makefile (install target)
2016-07-04 11:09:04 +02:00
Maksim Kuzevanov
9f1bf17a03
ln --relative in make install target
2016-07-04 11:58:38 +03:00
Martijn Otto
5d741bfd2d
Merge branch 'master' of github.com:CopernicaMarketingSoftware/AMQP-CPP
2016-07-04 10:14:00 +02:00
Martijn Otto
5b40c04f2a
Added documentation about missing RabbitMQ functionality
2016-07-04 10:13:50 +02:00
Martijn Otto
c055b1a439
Merge pull request #77 from javeme/return-type-of-waiting
...
Correct the returning type of Connection::waiting()
2016-07-04 09:41:54 +02:00
Martijn Otto
979128782b
Merge pull request #76 from maxim-ky/master
...
Made some destructors virtual and fixed a user-after-free bug
2016-07-04 09:38:31 +02:00
javeme
5cff314d88
Correct the returning type of Connection::waiting()
...
The returning type of Connection::waiting() should be bool,
but currently it's size_t type.
2016-07-03 21:35:44 +08:00
Maksim Kuzevanov
e3b7e6abd6
fix undefined behaviour due to a reference to a destroyed temporary object
2016-07-01 17:29:40 +03:00
Maksim Kuzevanov
89eda45df2
don't ignore a given PREFIX in makefile
2016-07-01 17:29:40 +03:00
Maksim Kuzevanov
1dcbc33b53
make it compile with cmake 2.8/gcc 4.7.3
2016-07-01 17:29:35 +03:00
Martijn Otto
17693ef549
Correctly remove the dependency files on clean and fix frame errors on architectures where chars default to unsigned,
...
fixes issue #52
2016-07-01 16:00:44 +02:00
Rafal Goslawski
f3343ad1cb
Bump version to 2.6.0
2016-06-30 11:19:54 +02:00
Martijn Otto
b91e0589f6
Updated cmake lists and added include, closes issue #75
2016-06-28 14:14:07 +02:00
Martijn Otto
2f1851728c
Merge pull request #72 from XeCycle/fionread-solaris
...
Some portability fixes for Solaris-like systems
2016-06-27 10:57:24 +02:00
Martijn Otto
3292424daa
Merge branch 'deferredconsumerbase-missing-include' of git://github.com/javeme/AMQP-CPP
2016-06-27 10:53:13 +02:00
Martijn Otto
d911d71dfa
Removed the ugly typedef
2016-06-27 10:52:58 +02:00
Martijn Otto
45131a1884
Merge branch 'javeme-aligned_storage-crash'
2016-06-27 10:48:51 +02:00
javeme
5c3ba7b00a
Program crashes when receiving a message due to memory corruption
...
crashes due to the wrong way using aligned_storage.
Steps to reproduce:
1. Start a consumer
channel.consume(queue, tag).onMessage(msgCallback)
2. Send a message to the consumer
3. The program crashes
Environment:
Windows 7 / VS2010
The reason:
The Windows prompted to memory corruption, I found some strange phenomenon
about stack_ptr<Message>, such as:
1.sizeof(stack_ptr<Message>) is equal to 2
2.stack_ptr._initialized becomes true after construct() called (actually,
it never has been assigned true, please see [1])
Finally I found that the root cause was stack_ptr._data, we directly used
aligned_storage rather than aligned_storage::type[2] as the type of _data.
so the _data was just an empty struct, and subsequent operations were
performed in illegal memory. It eventually led to the crash.
This patch we fixed the bug and add "_initialized = true" at the end of the
method stack_ptr::construct().
[1] https://github.com/CopernicaMarketingSoftware/AMQP-CPP/blob/master/include/stack_ptr.h#L83
[2] http://www.cplusplus.com/reference/type_traits/aligned_storage/
2016-06-27 02:03:15 +08:00
javeme
49eef84883
Bugfix: add missing include "includes.h" for deferredconsumerbase.cpp
...
When I compiled on the windows, there was a lot of errors like:
error C2065: "xxx": undeclared identifier...
2016-06-27 00:37:31 +08:00
Carl Lei
55aba43078
portability fix for pow overload resolution
...
On Solaris the compiler is missing the template overload.
2016-06-25 20:15:44 +08:00
Carl Lei
6d71b73063
portability fix for FIONREAD on Solaris
2016-06-25 20:15:12 +08:00
Martijn Otto
ba6b3e2923
Copied the methods to both implementations so they can return their concrete type
2016-06-23 16:02:04 +02:00
Martijn Otto
434a0fad52
Merge branch 'master' of github.com:CopernicaMarketingSoftware/AMQP-CPP
2016-06-23 14:43:10 +02:00
Martijn Otto
2c60151d31
Only allocate a message and its data when a consumer wants to and allow consumers to receive the individual parts
2016-06-23 14:42:50 +02:00
Emiel Bruijntjes
5e88fd3e75
fixed reallocation bug
2016-06-22 13:49:49 +02:00
Emiel Bruijntjes
2a0b0de409
updated README to explain the connection::expected() method
2016-06-15 15:07:32 -04:00
Emiel Bruijntjes
3d9b5b444b
fixed issues that caused reading data to be broken
2016-06-15 14:50:33 -04:00
Emiel Bruijntjes
99abd157e5
removed tcpbuffer and replaced it with a tcpoutbuffer
2016-06-15 13:41:14 -04:00
Emiel Bruijntjes
bc01c82e80
added buffer
2016-06-15 13:32:40 -04:00
Emiel Bruijntjes
24c8527b5d
added tcpinbuffer with much less allocation
2016-06-15 13:32:30 -04:00
Emiel Bruijntjes
6320e2ae0e
added consistent-hash exchange (same as pull request #68 )
2016-06-15 11:20:31 -04:00
Emiel Bruijntjes
ec9630ced7
Merge branch 'master' of https://github.com/CopernicaMarketingSoftware/AMQP-CPP
2016-06-15 07:27:11 -04:00
Emiel Bruijntjes
59830c659c
added connection::maxFrame() and connection::expected() methods to give hints about the amount of data that the connection::parse() method ideally expects
2016-06-15 04:57:46 -04:00
Rafal Goslawski
70d9224dd6
Update Makefile
2016-06-14 14:32:58 +02:00
Jan Westerdiep
7384b521ac
small legibility fixes
2016-06-10 15:21:10 +02:00
Emiel Bruijntjes
06afda3606
Update README.md
2016-04-25 09:08:30 +02:00
Emiel Bruijntjes
e2c7ffdcc1
Merge pull request #63 from hoxnox/master
...
Bugfix: add missing include guards
2016-04-06 17:08:25 +02:00
hoxnox
15fa529bfd
Bugfix: add missing include guards
2016-04-06 17:49:39 +03:00
Emiel Bruijntjes
ae8985c0ca
Merge pull request #60 from hoxnox/master
...
Buildfix: tcpconnection.cpp added to build sources
2016-03-29 09:35:38 +02:00
hoxnox
6e31cecdbd
Buildfix: tcpconnection.cpp added to build sources
2016-03-27 22:17:40 +03:00
Emiel Bruijntjes
ae3f6c4f54
Merge pull request #59 from elthariel/install_header
...
[cmake] Install headers
2016-03-22 09:21:32 +01:00