mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-24 02:35:20 +00:00
Fix bug #11737.
We need to use the FileName methods when moving or removing a file, so that refresh() gets called.
This commit is contained in:
parent
a0c768b397
commit
d930913898
@ -251,6 +251,7 @@ bool FileName::renameTo(FileName const & name) const
|
|||||||
{
|
{
|
||||||
LYXERR(Debug::FILES, "Renaming " << name << " as " << *this);
|
LYXERR(Debug::FILES, "Renaming " << name << " as " << *this);
|
||||||
bool success = QFile::rename(d->fi.absoluteFilePath(), name.d->fi.absoluteFilePath());
|
bool success = QFile::rename(d->fi.absoluteFilePath(), name.d->fi.absoluteFilePath());
|
||||||
|
d->refresh();
|
||||||
if (!success)
|
if (!success)
|
||||||
LYXERR0("Could not rename file " << *this << " to " << name);
|
LYXERR0("Could not rename file " << *this << " to " << name);
|
||||||
return success;
|
return success;
|
||||||
@ -264,12 +265,13 @@ bool FileName::moveTo(FileName const & name) const
|
|||||||
// there's a locking problem on Windows sometimes, so
|
// there's a locking problem on Windows sometimes, so
|
||||||
// we will keep trying for five seconds, in the hope
|
// we will keep trying for five seconds, in the hope
|
||||||
// that clears.
|
// that clears.
|
||||||
|
name.refresh();
|
||||||
if (name.exists()) {
|
if (name.exists()) {
|
||||||
bool removed = QFile::remove(name.d->fi.absoluteFilePath());
|
bool removed = name.removeFile();
|
||||||
int tries = 1;
|
int tries = 1;
|
||||||
while (!removed && tries < 6) {
|
while (!removed && tries < 6) {
|
||||||
QThread::sleep(1);
|
QThread::sleep(1);
|
||||||
removed = QFile::remove(name.d->fi.absoluteFilePath());
|
removed = name.removeFile();
|
||||||
tries++;
|
tries++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -277,8 +279,7 @@ bool FileName::moveTo(FileName const & name) const
|
|||||||
QFile::remove(name.d->fi.absoluteFilePath());
|
QFile::remove(name.d->fi.absoluteFilePath());
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
bool const success = QFile::rename(d->fi.absoluteFilePath(),
|
bool const success = renameTo(name);
|
||||||
name.d->fi.absoluteFilePath());
|
|
||||||
if (!success)
|
if (!success)
|
||||||
LYXERR0("Could not move file " << *this << " to " << name);
|
LYXERR0("Could not move file " << *this << " to " << name);
|
||||||
return success;
|
return success;
|
||||||
|
Loading…
Reference in New Issue
Block a user