Opened 11 years ago

#6719 new Bugs

Interprocess shared_memory 1.48 files deleted by prior versions...

Reported by: monkey.d@… Owned by: Ion Gaztañaga
Milestone: To Be Determined Component: interprocess
Version: Boost 1.48.0 Severity: Regression
Keywords: shared_memory deleting files Cc:

Description

This is reproducible on OSX.

In boost 1.48.0, shared_memory creates a folder in /tmp/ called boost_interprocess/ all shared memory files are put in that folder.

In boost 1.47.0 and prior, shared_memory creates a folder in /tmp/ called boost_interprocess/ and in there, it would create another sub-directory named by the boottime. It would also delete any other folders/files located in /tmp/boost_interprocess

The problem is, now that I am using boost 1.48, my application uses /tmp/boost_interprocess. If any program using boost 1.47.0 shared memory, it will delete every files and folder in /tmp/boost_interprocess (which is what boost 1.48 uses.)

I surely have the access to all my programs, and can make sure we are all using boost 1.48+, but I can't guarantee that the user doesn't have a program using boost 1.47 or prior...

To fix this, there's one easy way, change the folder name boost_interprocess to something else... boost_interprocess2 for example. Hence, boost 1.47 will only delete what's in /tmp/boost_interprocess and leave all the other programs using /tmp/boost_interprocess2 in peace...

or you could give the option to the users to change that folder name.

Change History (0)

Note: See TracTickets for help on using tickets.