Commit Graph

175 Commits

Author SHA1 Message Date
Ion Gaztañaga
fa647e4756 Ignore some warnings as we include other libraries that might not use the same warning levels 2021-12-31 13:30:23 +01:00
Ion Gaztañaga
478b6fd2d5 Fix -Wcast-align warning 2021-12-30 12:50:35 +01:00
Ion Gaztañaga
55ad499dc4 Fixes #160 ("More GCC suggest-override warnings"). 2021-12-27 00:26:54 +01:00
Ion Gaztañaga
85786848f0 Separate a special function for creating shared folders as permissions and logic is different from normal folder open/create logic in Unix 2021-11-09 00:54:26 +01:00
Ion Gaztañaga
7a743c6853 Fixes #157 ("Set sticky bit on shared interprocess folder") 2021-11-07 21:11:40 +01:00
Ion Gaztañaga
efc75031f5 Support Clang's -Wconversion -Wfloat-conversion -Wsign-conversion with -Werror 2021-10-20 00:18:59 +02:00
Ion Gaztañaga
3b5da7b0c1 Support GCC's -Wconversion -Wfloat-conversion -Warith-conversion -Wsign-conversion warnings. 2021-10-16 17:46:01 +02:00
Antony Polukhin
122f69aa00 properly initilize enable_shared_from_this if the type is const 2021-09-24 14:26:24 +03:00
Ion Gaztañaga
e4259fe168 Timeout support for managed memory segments. Adding BOOST_INTERPROCESS_MANAGED_OPEN_OR_CREATE_INITIALIZE_MAX_TRIES/BOOST_INTERPROCESS_MANAGED_OPEN_OR_CREATE_INITIALIZE_TIMEOUT_SEC configurable parameters.
Fixes #128 ("Infinite loop in managed_open_or_create_impl.hpp")

Fixes #130 ("infinite loop in managed_open_or_create_impl.hpp if filesize is 0")
2021-08-24 14:57:59 +02:00
Ion Gaztañaga
4f0b3c2c93 Fixes #103 ("Use interprocess headers without exception handling") 2021-08-23 13:32:08 +02:00
Ion Gaztañaga
7c8893788d Fixes #65 ("Robustness of the interprocess mutex") and fixes #67 ("Changed to use posix robust mutex"). 2021-08-22 00:31:16 +02:00
Ion Gaztañaga
512f95cb07 Implements standard C++ mutex/condition variable requirements for Interprocess utilities.
Fixes #149 ("interprocess_condition_any::timed_wait update")
2021-08-19 00:38:24 +02:00
Ion Gaztañaga
8ec3dfb396 Remove deprecated volatile variables for inter-thread communication 2021-08-12 01:41:50 +02:00
Ion Gaztañaga
9ac7eb3d84 Fixes #145 ("1.76 now requires unicode paths on windows") 2021-08-12 01:41:26 +02:00
Ion Gaztañaga
0fcdbc4083 Interprocess no longer depends on Boost.DateTime. Instead, all timed functions were templated to take a TimePoint. This time point can be boost::date_time::ptime, std::time_point or boost::chrono::time_point. 2021-04-13 15:18:23 +02:00
Ion Gaztañaga
ece73cef73 Fixes #120 ("segment_manager customization") 2021-02-21 00:15:21 +01:00
Ion Gaztañaga
639afc2a59 Rename internal "windows_xxx" implementations to "winapi_xxx" implementation as public "windows_xxx" resources are native windows implementations, instead of POSIX emulations based on winapi system calls. 2021-02-13 23:27:50 +01:00
Ion Gaztañaga
26be575e66 Fix ASAN error in vectorstream_test 2021-02-13 22:44:42 +01:00
Ion Gaztañaga
86464712c2 - As suggested in the report, windows_semaphore implementation stores the initial count to be able to use it when there is need to recreate the winapi semaphore structure. Fixes #123.
- Tests are also improved in Windows to test both the generic implementation and the alternative windows implementation.
2021-02-11 12:59:40 +01:00
Ion Gaztañaga
140b50efb3 Added support for wide characters when creating named resources in operating systems with wide-char APIs (at this time, Windows).
Fixes #93 and fixes #134.
2021-01-31 00:27:15 +01:00
Ion Gaztañaga
20a46fa105 Replace <boost/functional/hash.hpp> with more correct <boost/container_hash/hash.hpp> 2021-01-15 18:06:36 +01:00
Ion Gaztañaga
14c49cae6d Remove GCC 10 warning about deprecated default copy assignment. 2020-10-23 14:14:56 +02:00
Ion Gaztañaga
f2ecdc70ef Fixes #99 ("Error in win32_api.hpp"):
- Careful use of Boost.Winapi and use of SetFilePointer instead of SetFilePointerEx (which requires a _LARGE_INTEGER by value that difficults the use of windows.h in certain circustances)
- Added tests to verify windows.h inclusion without BOOST_USE_WINDOWS_H does not break things
2020-06-03 21:37:02 +02:00
Ion Gaztañaga
c718371493 Refactored "BOOST_INTERPROCESS_ENABLE_TIMEOUT_WHEN_LOCKING" logic into a single function. 2020-06-02 13:21:34 +02:00
Ion Gaztañaga
5c1fd38334 Remove config_begin/config_end include pairs in tests to better emulate what warnings users will see. 2020-05-25 12:34:23 +02:00
Ion Gaztañaga
65ae55fe1f Fix typo in test traces (set_test -> map_test) 2019-04-08 00:33:40 +02:00
Ion Gaztañaga
1e89871cdd Enable test again, check BOOST_INTERPROCESS_MAPPED_FILES after workaround.hpp is included 2018-11-17 00:22:25 +01:00
Ion Gaztañaga
fbf326ccf1 Remove unused variable FileSize 2018-11-17 00:21:56 +01:00
Ion Gaztañaga
53f328f4c1 Fix warnings about throwing destructors, which are by default noexcept 2018-11-17 00:21:41 +01:00
Ion Gaztañaga
08e9dc0a8c Fix compilation warnings. 2018-11-10 11:03:15 +01:00
Ion Gaztañaga
d1b05bdffb Remove unused parameter warnings in operator ==/!= 2018-09-29 09:59:57 +02:00
Ion Gaztañaga
dff9f823ce Fix invalid free of non-char pointer. 2018-09-29 09:59:39 +02:00
Ion Gaztañaga
65ab92b06f Update adaptive pool usage to breaking changes in Boost.Container.
Added invariant checking for tests
2018-04-29 12:45:32 +02:00
Ion Gaztañaga
85a85778e2 - Update changelog to Pull #45
- Cleanup in shared_ptr_test and named_proxy
- Reuse Boost.Container transform_iterator instead of using own.
2017-12-08 10:47:51 +01:00
Ion Gaztañaga
73bc2b87c4 Update intrusive_ptr move semantics to support Boost.Move. 2017-12-08 10:38:55 +01:00
Sebastian Theophil
24a2d2bc25 Make intrusive_ptr move constructible/assignable and make its methods noexcept 2017-12-04 17:38:50 +01:00
Ion Gaztañaga
b3f9a58079 Update to new dtl namespace in boost::container. 2017-11-07 00:52:46 +01:00
Ion Gaztañaga
6f5944f63c Use boost::movelib::unique_ptr instead of std::auto_ptr vs. std::unique_ptr 2017-05-26 23:27:23 +02:00
Daniela Engert
08b25cdcdb Conditionally replace deprecated/removed std::auto_ptr by std::unique_ptr.
Inline typedefs from deprecated/removed C++98 function adapters.

Signed-off-by: Daniela Engert <dani@ngrt.de>
2017-05-12 08:30:54 +02:00
Niklas Angare
0bf3e3fc03 Fixed options for cross-compilation.
Replaced <host-os> with <target-os> so that the correct options for the target are selected when cross-compiling. When not cross-compiling, it makes no difference as target-os by default mirrors host-os.
2017-02-12 13:04:09 +01:00
Ion Gaztañaga
469f38d553 Added test case for BOOST_INTERPROCESS_SHARED_DIR_FUNC 2017-01-12 15:00:10 +01:00
Ion Gaztañaga
dc5e8f48a1 Remove signed/unsigned comparison warning. 2016-06-29 14:46:45 +02:00
Ion Gaztañaga
3ca88495df Add missing extra parenthesis to BOOST_STATIC_ASSERT to avoid compilation errors in some compilers. 2015-10-18 21:33:26 +02:00
Ion Gaztañaga
73b3d75cf9 - Added BOOST_FORCE_INLINE to offset_ptr function.
- Reimplemented pointer_plus_bits to correct bugs and use uintptr_t instead of std::size_t.
2015-10-17 00:26:24 +02:00
Ion Gaztañaga
fd4ecafbd9 Remove unmaintained multi_index instantiation test 2015-10-14 22:19:53 +02:00
Ion Gaztañaga
e352a84dd2 Fixed Trac #5139 ("Initial Stream Position in Boost.Interprocess.Vectorstream") 2015-06-24 16:18:17 +02:00
Ion Gaztañaga
5fe2014ade Fixe memory leaks 2015-06-09 14:53:24 +02:00
Ion Gaztañaga
25bb48435f - Rewritten posix features detection according to the first POSIX/Single Unix Specification that standardized it.
- Added macro for unnamed semaphores as OSX claims this support but returns ENOSYS, which is not very useful.
- Added macro for mapped files, as QNX does not support them.
2015-01-31 23:18:32 +01:00
Ion Gaztañaga
6c8ba8d3e9 - Erased unused test and files.
- Used simplified simple_swap, nothrow and placement new
2015-01-10 11:06:24 +01:00
Ion Gaztañaga
a8b8eac741 More dependency reduction: Reused Boost.Move/Boost.Intrusive/Boost.Container utilities, removed some standard headers.
Removed some GCC warnings.
2015-01-07 00:56:27 +01:00