Added sharedFile::exists() call to match version in sharedPage class, fixed sharedPage::exists not being inside SHM_ENABLED block.

This commit is contained in:
Thulinma 2018-08-21 10:05:01 +02:00
parent 9947f3a5ec
commit ff19c9c625
2 changed files with 10 additions and 2 deletions

View file

@ -348,6 +348,8 @@ namespace IPC {
close();
}
#ifdef SHM_ENABLED
/// Returns true if the open file still exists.
/// \TODO Not implemented under Windows.
bool sharedPage::exists(){
@ -364,7 +366,6 @@ namespace IPC {
#endif
}
#ifdef SHM_ENABLED
///\brief Unmaps a shared page if allowed
void sharedPage::unmap() {
if (mapped && len) {
@ -561,6 +562,13 @@ namespace IPC {
}
}
/// Returns true if the open file still exists.
bool sharedFile::exists(){
struct stat sb;
if (fstat(handle, &sb)){return false;}
return (sb.st_nlink > 0);
}
///\brief Initialize a page, de-initialize before if needed
///\param name_ The name of the page to be created
///\param len_ The size to make the page

View file

@ -109,9 +109,9 @@ namespace IPC {
bool operator < (const sharedFile & rhs) const {
return name < rhs.name;
}
bool exists(){return true;}
void close();
void unmap();
bool exists();
///\brief The fd handle of the opened shared file
int handle;
///\brief The name of the opened shared file