Commit Graph

474 Commits

Author SHA1 Message Date
Ion Gaztañaga
75ecc955d3 Fixes #122 ("Mark constructors/assignment/swap noexcept where possible") 2021-02-16 00:01:04 +01:00
Ion Gaztañaga
9f40b16e9c - Alignment passed "to managed_open_or_create_impl" shall be the strictest between alignof(segment_manager) and the alignment of the embedded memory algorithm so that both the segment_manager and the allocated blocks are properly aligned. 2021-02-15 16:03:27 +01:00
Ion Gaztañaga
f85d2cb99c Make priv_end_block() more consistent with priv_add_segment() avoid false positives in assertions. 2021-02-15 10:18:08 +01:00
Ion Gaztañaga
6b61f9d990 Fixes #83 ("Add BOOST_INTERPROCESS_FORCE_NATIVE_EMULATION option") 2021-02-14 00:36:13 +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
74fac07b21 Fixes #126 ("_ReadWriteBarrier is deprecated warning when compiling with clang-cl.exe!) disabling deprecation warning on BOOST_INTERPROCESS_READ_WRITE_BARRIER 2021-02-12 19:21:07 +01:00
Ion Gaztañaga
00b85dff97 Fixes #138. 2021-02-12 00:12:02 +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
705a51f649 Removed _beginthreadex usage. Fixes #76. 2021-02-10 22:28:45 +01:00
Ion Gaztañaga
87379be15f Fixes #106 (Use fallocate on truncate_file) 2021-02-03 09:15:40 +01:00
Ion Gaztañaga
561e9e80b5 Merge branch 'patch-1' of https://github.com/decent-dcore/interprocess into decent-dcore-patch-1 2021-02-02 15:15:12 +01:00
Ion Gaztañaga
4a93e3e246 Merge branch 'develop' into develop 2021-02-02 15:07: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
8f63c6054c Remove unused <boost/interprocess/detail/posix_time_types_wrk.hpp> 2021-01-15 18:07:06 +01:00
Ion Gaztañaga
8eb3703ba9 Add missing <typeinfo> 2021-01-15 18:06:51 +01:00
Ion Gaztañaga
57d125d996 - Update changelog.
- Fix typo in mapped_region.hpp
2020-10-23 14:15:23 +02:00
Ion Gaztañaga
286ef46560 Fixes #127 ("static assertion failure with boost interprocess 1.74 and basic_managed_shared_memory").
Removes unneeded and (some of them, wrong) assert and static asserts in segment_manager's constructor.
2020-08-11 22:41:54 +02:00
Andrey Semashev
b89b22c0ea Fixed initialized flag not being set correctly. 2020-06-07 19:00:42 +03:00
Andrey Semashev
daa782cd92 Fix compilation error on MinGW.
MinGW has nonstandard definition of PSECURITY_DESCRIPTOR, which requires
a cast when calling WinAPI functions InitializeSecurityDescriptor and
SetSecurityDescriptorDacl. This is done by Boost.WinAPI wrapper functions.

Fixes https://github.com/boostorg/interprocess/issues/118.
2020-06-07 19:00:01 +03: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
037c2dfe5e - Use Boost Winapi as much as possible (let's see if this fixes #105)
- Disable buggy and old BOOST_INTERPROCESS_BOOTSTAMP_IS_LASTBOOTUPTIME method.
2020-06-03 00:56:47 +02:00
Ion Gaztañaga
c87039b6c4 Fixes issue #89 ("priv_size_from_mapping_size() calculates wrong value") 2020-06-03 00:39:05 +02:00
Ion Gaztañaga
1fc321f31b Refactor winapi wait on single object to only have a single function depending on date_time's ptime. 2020-06-02 14:51:43 +02:00
Ion Gaztañaga
30d5005ac6 Use is_pos_infinity() instead of pos_inf due to some old MinGW compilers ICEing on the conversion from the special value to ptime 2020-06-02 14:51:08 +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
4c6bacb0f7 Add sanity checks to segment_mananger's constructor 2020-06-02 13:13:48 +02:00
Ion Gaztañaga
b4301c30c5 Add alignment check when constructing the segment_manager 2020-05-25 21:36:09 +02:00
Eugene Zelenko
d9f81ad77e Use BOOST_OVERRIDE to fix GCC -Wsuggest-override and Clang-tidy modernize-use-override warnings.
Also fix Clang-tidy modernize-deprecated-headers and modernize-use-bool-literals warnings.
Alphabetical order of STL headers.
2020-05-23 17:11:13 -07:00
oktonion
6586572759 enhancing of win file locks
makes returns clear to understand
elimintes compiler warnings
2020-03-02 11:17:27 +03:00
oktonion
771e849fae fix of WinAPI calls to (Un)LockFileEx
for WinAPI (Un)LockFileEx reserved value should always be zero, no matter what
2020-03-02 11:03:19 +03:00
oktonion
7935630197 fix of win file locks (classic return equal error) 2020-03-02 11:01:52 +03:00
DCore Team
2fefed3ba2 Correct MSVC compilation warning
boost/interprocess/streams/bufferstream.hpp(135): warning C4242: '=': conversion from 'int' to '_Elem', possible loss of data
        with
        [
            _Elem=char
        ]
2019-06-14 09:59:27 +02:00
Ion Gaztañaga
4a57769910 - Fixes #85 ("warning: Implicit conversion loses integer precision")
- Fixes #86 ("warning: Possible misuse of comma operator")
2019-05-11 19:29:38 +02:00
Ion Gaztañaga
4744b9a24e Fixes #80 ("realloc in interprocess's c_heap_deleter can leak memory") 2019-03-13 22:54:33 +01:00
Ion Gaztañaga
5476d6ec56 Merge branch 'develop' of https://github.com/Vizor/interprocess into Vizor-develop 2019-02-28 16:07:46 +01:00
Marcel Raad
61bed1fd31 Fix -Wextra-semi clang warnings
Remove superfluous semicola.
2019-02-25 10:51:45 +01:00
Vizor
6483b1ced5 Fixed undeclared winapi_wrapper_timed_wait_for_single_object()
Declaration of winapi_wrapper_timed_wait_for_single_object() placed above usage of this function.
2019-01-22 15:16:09 +01:00
Edward Diener
2fff651f25 Remove executable permission. 2018-12-03 08:03:20 -05:00
KhabarlakKonstantin
296d03858c Fix deadlock in named_condition::notify
Avoid deadlock in named_condition::notify when
BOOST_INTERPROCESS_ENABLE_TIMEOUT_WHEN_LOCKING is defined
2018-11-28 13:44:20 +02:00
Ion Gaztañaga
4e2c06b242 Fix Issue #64 ("UBSan: runtime error: load of value 4294967295 [...] for type 'boost::interprocess::mode_t') 2018-11-17 00:23:15 +01:00
Romain Geissler
1b3dcf9814 Prepare for C++20 and remove "throw()" usage. 2018-11-11 22:33:50 +00:00
Ion Gaztañaga
c84c0dd217 Merge branch 'develop' of https://github.com/shayosler/interprocess into shayosler-develop 2018-10-04 22:58:55 +02:00
Ion Gaztañaga
8b36213530 Closes issue #61 2018-09-18 21:28:27 +02:00
Ion Gaztañaga
ce9b61dbe1 Fixes issue #60 2018-09-18 19:18:36 +02:00
Shay Osler
a3e77dee06 implement named condition any using shared memory 2018-09-12 10:48:32 -04:00
Ion Gaztañaga
818ef814e9 Fixes GitHub Issue #59: "warning: ISO C++ prohibits anonymous structs [-Wpedantic]" 2018-08-13 17:48:12 +02:00
Ion Gaztañaga
14bc86a0c6 Remove NtSetTimerResolution as it's not used. 2018-04-29 12:52:39 +02:00
Ion Gaztañaga
911c79e5b5 GitHub Issue #53: "Crash waiting on condition variable from multiple processes in do_wait()".
Disables Posix process-shared support for Apple as it's still buggy, as shown in: https://stackoverflow.com/questions/35305291/boost-interprocess-condition-multiple-threads-calling-wait-fails
2018-04-29 12:51:06 +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
1baf757d9f Fixed GitHub Issue #54: "fill_system_message() ignores an error returned by winapi::format_message()" 2018-04-29 12:43:16 +02:00