Comments (3)
Simplest fix I can think of is to remove m_prev_size
from bit-field:
struct SizeHolder
{
//!This block's memory size (including block_ctrl
//!header) in Alignment units
size_type m_prev_size;
size_type m_size : sizeof(size_type)*CHAR_BIT - 2;
size_type m_prev_allocated : 1;
size_type m_allocated : 1;
};
from interprocess.
Many thanks for your detailed report and fix. I tried to find the issue but could not imagine the bitfiled would be the cause. I considered m_prev_size as a separate memory location, but maybe it's incorrect and it's also better expressed removing the bit field part. thanks again!
from interprocess.
Thanks for confirming and closing this!
from interprocess.
Related Issues (20)
- In case posix_mutex::lock() detects EOWNERDEAD the exception should throw lock_exception(owner_dead_error) HOT 2
- open_or_create stuck in retry loop indefinitely on macOS aarch64 if retries are enabled HOT 1
- [vectorstream] basic_vectorbuf segmentation fault when exceeding INT_MAX elements HOT 1
- managed_windows_shared_memory crash on destruction
- Floating Point Exception if Alignment is Multiple of 256 HOT 1
- Extremly slow performance when constructing large arrays of basic type
- namespace conflict on constructing objects in segment manager with named proxy in combination with boost geometry HOT 1
- x86 inline assembly should provide an alternative for Intel syntax
- missing/misused m_is_wide in char_wchar_holder assignment operators
- Condition variable and Mutex blocks after one process crashes and restart HOT 1
- Memory allocation docs reference dead website HOT 1
- Local memory only implementation HOT 2
- boost.interprocess seems to have a bug. HOT 2
- boost::interprocess::named_condition compile error on Visual Studio 2022
- Constructing vector of POD using boost interprocess throws exception only in debug mode
- There is a bug in boost/interprocess/detail/os_thread_function.hpp
- Bug in boost::interprocess::ipcdetail::sync_handles::obtain_mutex
- Using `message_queue` with `windows_shared_memory`
- `message_queue::timed_receive` block process a long duration than expect when `system time` jumb back
- Modular Boost C++ Libraries Request HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from interprocess.