Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Development
openfoam
Commits
3ef37ce1
Commit
3ef37ce1
authored
Jun 12, 2019
by
mattijs
Committed by
Andrew Heather
Jun 12, 2019
Browse files
BUG: fileMonitor: do not allow used watch also in free watches.
See #1328.
parent
fc58d517
Changes
2
Hide whitespace changes
Inline
Side-by-side
src/OSspecific/MSwindows/fileMonitor/fileMonitor.C
View file @
3ef37ce1
...
...
@@ -450,14 +450,16 @@ Foam::fileMonitor::~fileMonitor()
// regIOobject)
Foam
::
label
Foam
::
fileMonitor
::
addWatch
(
const
fileName
&
fName
)
{
label
watchFd
;
if
(
debug
)
{
Pout
<<
"fileMonitor : adding watch on file "
<<
fName
<<
endl
;
}
label
sz
=
freeWatchFds_
.
size
()
;
label
watchFd
;
if
(
sz
)
if
(
freeWatchFds_
.
size
()
)
{
watchFd
=
freeWatchFds_
[
sz
-
1
];
freeWatchFds_
.
setSize
(
sz
-
1
);
watchFd
=
freeWatchFds_
.
remove
();
}
else
{
...
...
@@ -495,7 +497,10 @@ bool Foam::fileMonitor::removeWatch(const label watchFd)
<<
watchFile_
[
watchFd
]
<<
endl
;
}
freeWatchFds_
.
append
(
watchFd
);
if
(
!
freeWatchFds_
.
found
(
watchFd
))
{
freeWatchFds_
.
append
(
watchFd
);
}
return
watcher_
->
removeWatch
(
watchFd
);
}
...
...
src/OSspecific/POSIX/fileMonitor/fileMonitor.C
View file @
3ef37ce1
...
...
@@ -446,14 +446,16 @@ Foam::fileMonitor::~fileMonitor()
// regIOobject)
Foam
::
label
Foam
::
fileMonitor
::
addWatch
(
const
fileName
&
fName
)
{
label
watchFd
;
if
(
debug
)
{
Pout
<<
"fileMonitor : adding watch on file "
<<
fName
<<
endl
;
}
label
sz
=
freeWatchFds_
.
size
()
;
label
watchFd
;
if
(
sz
)
if
(
freeWatchFds_
.
size
()
)
{
watchFd
=
freeWatchFds_
[
sz
-
1
];
freeWatchFds_
.
setSize
(
sz
-
1
);
watchFd
=
freeWatchFds_
.
remove
();
}
else
{
...
...
@@ -491,7 +493,10 @@ bool Foam::fileMonitor::removeWatch(const label watchFd)
<<
watchFile_
[
watchFd
]
<<
endl
;
}
freeWatchFds_
.
append
(
watchFd
);
if
(
!
freeWatchFds_
.
found
(
watchFd
))
{
freeWatchFds_
.
append
(
watchFd
);
}
return
watcher_
->
removeWatch
(
watchFd
);
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment