Subject: [Boost-bugs] [Boost C++ Libraries] #4619: Interprocess failed to find the tmp directory (windows platform) if the tmp directory stored in the registry points to a none-existing directory
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-09-02 05:35:00
#4619: Interprocess failed to find the tmp directory (windows platform) if the tmp
directory stored in the registry points to a none-existing directory
----------------------------------+-----------------------------------------
Reporter: josephsieh@⦠| Owner: igaztanaga
Type: Bugs | Status: new
Milestone: To Be Determined | Component: interprocess
Version: Boost 1.44.0 | Severity: Problem
Keywords: |
----------------------------------+-----------------------------------------
shmData = new shared_memory_object (
create_only, shmDataName, read_write
);
This problem only happens in the windows platform (XP, VISTA, Windows 7,
both 32 and 64 bits).
When you try to "new" shared_memory_object, IPC will search system defined
tmp directory. IPC tries to search the tmp folder location stored in the
system registry first. If the registry does not have the tmp folder
location (either being deleted accidentally or intentionally), IPC will
continue to search the system environment variable "TMP" and "TEMP" for
the tmp directory information.
Now, if the registry "DID" have tmp folder information, but that folder
"DOES NOT" exist. Then IPC load the tmp folder location and tries to
create the interprocess directory in that "NON-EXISTING" tmp folder, then
IPC will terminate and throw an exception instead of continue to execute
the fail-safe options -- continue to search the tmp folder information
from system environment variable, etc.
It should be considered as a bug.
In summary, when IPC loads the non-existing tmp folder from the registry
and tries to create "interprocess" folder in that non-existing tmp folder,
IPC should not just throw exception but to continue to execute fail-safe
options: continue to search the system environment for "TMP" and "TEMP" as
the same behavior of not finding tmp directory info from the registry.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/4619> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:04 UTC