mirror of
https://github.com/tdlight-team/tdlight-telegram-bot-api.git
synced 2025-01-14 13:57:32 +01:00
Check write access to temporary directory.
This commit is contained in:
parent
061c34749a
commit
54112379ff
@ -339,7 +339,7 @@ int main(int argc, char *argv[]) {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if (r_non_options.is_error()) {
|
if (r_non_options.is_error()) {
|
||||||
LOG(PLAIN) << argv[0] << ": " << r_non_options.error();
|
LOG(PLAIN) << argv[0] << ": " << r_non_options.error().message();
|
||||||
LOG(PLAIN) << options;
|
LOG(PLAIN) << options;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
@ -370,6 +370,20 @@ int main(int argc, char *argv[]) {
|
|||||||
TRY_STATUS_PREFIX(td::set_temporary_dir(temporary_directory), "Can't set temporary directory: ");
|
TRY_STATUS_PREFIX(td::set_temporary_dir(temporary_directory), "Can't set temporary directory: ");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
auto temp_dir = td::get_temporary_dir();
|
||||||
|
if (temp_dir.empty()) {
|
||||||
|
return td::Status::Error("Can't find directory for temporary files. Use --temp-dir option to specify it");
|
||||||
|
}
|
||||||
|
|
||||||
|
auto r_temp_file = td::mkstemp(temp_dir);
|
||||||
|
if (r_temp_file.is_error()) {
|
||||||
|
return td::Status::Error(
|
||||||
|
PSLICE() << "Can't create files in the directory \"" << temp_dir
|
||||||
|
<< "\". Use --temp-dir option to specify another directory for temporary files");
|
||||||
|
}
|
||||||
|
r_temp_file.ok_ref().first.close();
|
||||||
|
td::unlink(r_temp_file.ok().second).ensure();
|
||||||
|
|
||||||
if (!log_file_path.empty()) {
|
if (!log_file_path.empty()) {
|
||||||
TRY_STATUS_PREFIX(file_log.init(log_file_path, log_max_file_size), "Can't open log file: ");
|
TRY_STATUS_PREFIX(file_log.init(log_file_path, log_max_file_size), "Can't open log file: ");
|
||||||
log.set_first(&ts_log);
|
log.set_first(&ts_log);
|
||||||
@ -378,7 +392,7 @@ int main(int argc, char *argv[]) {
|
|||||||
return td::Status::OK();
|
return td::Status::OK();
|
||||||
}();
|
}();
|
||||||
if (init_status.is_error()) {
|
if (init_status.is_error()) {
|
||||||
LOG(PLAIN) << init_status.error();
|
LOG(PLAIN) << init_status.error().message();
|
||||||
LOG(PLAIN) << options;
|
LOG(PLAIN) << options;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user