259 Commits

Author SHA1 Message Date
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
Ion Gaztañaga
37d00bc798 Compile-time dependency reduction. Update to Boost.Container changes. 2015-01-02 19:40:37 +01:00
Ion Gaztañaga
ac06eb010a Removed GCC warnings about unused parameters 2014-10-13 23:33:30 +02:00
Ion Gaztañaga
7d9f58ca99 Added missing #pragma once 2014-10-13 23:26:57 +02:00
Ion Gaztañaga
ad1b7f301c Massive but simple changes:
- Removed all tabs
- Changed all Doxygen @cond/@endcond tags with preprocessor sections, as Doxygen still has some problems when parsing this code. This also makes unmatched Doxygen sections a compilation error, which is easier to detect.
2014-07-30 11:46:32 +02:00
Ion Gaztañaga
06eef6f4e8 intermodule_singleton fixes for many platforms:
- Use Boost.Container to allow debug-release mixed code (in some platforms, std:: containers' ABI changes from Debug to Release)

- By default non-Phoenix and Lazy singletons.

- Use atexit instead of the global object destructor to obtain LIFO semantics.

- Avoid testing Phoenix singletons, as in many plataforms calling atexit from atexit is not supported.
2014-07-14 23:34:17 +02:00
Ion Gaztañaga
e9659e563b Workaround for error in Intel compilers, avoid the static array 2014-07-14 23:31:16 +02:00
Ion Gaztañaga
acd03c0fa3 Add -lrt in Jamfiles to linux platforms 2014-07-14 23:30:33 +02:00
Ion Gaztañaga
de72bbf2d8 Fixed vector_test and cleaned up intermodule singleton code. 2014-07-10 21:38:52 +02:00
Ion Gaztañaga
2b4788e183 Fixed mimatched new[]/delete when using auto_ptr. 2014-06-16 00:38:28 +02:00
Ion Gaztañaga
1eb0000ac9 Fixed unused variable and redeclaration warnings. 2014-06-06 14:06:53 +02:00
Ion Gaztañaga
8895c8a44e Removed some unused typedef/variable warnings 2014-06-06 08:49:53 +02:00
Ion Gaztañaga
aa09229e8a Fixes #10011 segment_manager::find( unique_instance_t* ) fails to compile 2014-06-02 14:40:19 +02:00
Ion Gaztañaga
81a5fcf56d Removed trailing whitespaces. 2014-05-28 15:48:09 +02:00
Ion Gaztañaga
de405e89a3 * If BOOST_USE_WINDOWS_H is defined, <windows.h> and other windows SDK files are included,
otherwise the library declares needed functions and structures to reduce the impact of including
those heavy headers.

*  Added `get_size` to windows_shared_memory.
2014-05-28 15:30:04 +02:00
Ion Gaztañaga
02a7e7ecf2 More interprocess_exception fixes & #ifdef rephrasings 2014-05-25 20:50:39 +02:00
Ion Gaztañaga
5f81d0dc14 Fixes #9861 "Remove references to gcc-mingw" 2014-04-16 12:13:59 +02:00