Catalogs: check for local IO failures writing to disk
Sentry.io shows some examples where we failed to write valid data to disk; check for that if possible.
This commit is contained in:
committed by
Automatic Release Builder
parent
57b4060eb3
commit
0fbfa3426f
@@ -143,9 +143,15 @@ protected:
|
||||
Dir d(m_owner->installRoot());
|
||||
SGPath p = d.file("catalog.xml");
|
||||
sg_ofstream f(p, std::ios::out | std::ios::trunc);
|
||||
f.write(m_buffer.data(), m_buffer.size());
|
||||
const auto sz = m_buffer.size();
|
||||
f.write(m_buffer.data(), sz);
|
||||
f.close();
|
||||
|
||||
if (f.fail()) {
|
||||
m_owner->refreshComplete(Delegate::FAIL_FILESYSTEM);
|
||||
return;
|
||||
}
|
||||
|
||||
time(&m_owner->m_retrievedTime);
|
||||
m_owner->writeTimestamp();
|
||||
m_owner->refreshComplete(Delegate::STATUS_REFRESHED);
|
||||
|
||||
Reference in New Issue
Block a user