make LogCleaner support relative paths

This commit is contained in:
Marco Wang 2021-05-17 23:35:37 +08:00 committed by Sergiu Deitsch
parent e8e40f76db
commit c27c3a803b

View File

@ -478,7 +478,6 @@ class LogFileObject : public base::Logger {
class LogCleaner { class LogCleaner {
public: public:
LogCleaner(); LogCleaner();
virtual ~LogCleaner() {}
void Enable(int overdue_days); void Enable(int overdue_days);
void Disable(); void Disable();
@ -486,7 +485,7 @@ class LogCleaner {
const string& base_filename, const string& base_filename,
const string& filename_extension) const; const string& filename_extension) const;
inline bool enabled() const { return enabled_; } bool enabled() const { return enabled_; }
private: private:
vector<string> GetOverdueLogNames(string log_directory, vector<string> GetOverdueLogNames(string log_directory,
@ -1296,9 +1295,6 @@ void LogFileObject::Write(bool force_flush,
// Remove old logs // Remove old logs
if (log_cleaner.enabled()) { if (log_cleaner.enabled()) {
if (base_filename_selected_ && base_filename_.empty()) {
return;
}
log_cleaner.Run(base_filename_selected_, log_cleaner.Run(base_filename_selected_,
base_filename_, base_filename_,
filename_extension_); filename_extension_);
@ -1324,6 +1320,7 @@ void LogCleaner::Run(bool base_filename_selected,
const string& base_filename, const string& base_filename,
const string& filename_extension) const { const string& filename_extension) const {
assert(enabled_ && overdue_days_ >= 0); assert(enabled_ && overdue_days_ >= 0);
assert(!base_filename_selected || !base_filename.empty());
vector<string> dirs; vector<string> dirs;
@ -1362,7 +1359,6 @@ vector<string> LogCleaner::GetOverdueLogNames(string log_directory,
DIR *dir; DIR *dir;
struct dirent *ent; struct dirent *ent;
if ((dir = opendir(log_directory.c_str()))) { if ((dir = opendir(log_directory.c_str()))) {
while ((ent = readdir(dir))) { while ((ent = readdir(dir))) {
if (strcmp(ent->d_name, ".") == 0 || strcmp(ent->d_name, "..") == 0) { if (strcmp(ent->d_name, ".") == 0 || strcmp(ent->d_name, "..") == 0) {