Browse Source
Merge branch 'stefan0xC-check-data-folder-permissions'
pull/2773/head
Daniel García
2 years ago
No known key found for this signature in database
GPG Key ID: FC8A7D14C3CD543A
2 changed files with
15 additions and
2 deletions
-
src/main.rs
-
src/util.rs
|
|
@ -303,6 +303,10 @@ async fn check_data_folder() { |
|
|
|
} |
|
|
|
exit(1); |
|
|
|
} |
|
|
|
if !path.is_dir() { |
|
|
|
error!("Data folder '{}' is not a directory.", data_folder); |
|
|
|
exit(1); |
|
|
|
} |
|
|
|
|
|
|
|
if is_running_in_docker() |
|
|
|
&& std::env::var("I_REALLY_WANT_VOLATILE_STORAGE").is_err() |
|
|
|
|
|
@ -1,7 +1,7 @@ |
|
|
|
//
|
|
|
|
// Web Headers and caching
|
|
|
|
//
|
|
|
|
use std::io::Cursor; |
|
|
|
use std::io::{Cursor, ErrorKind}; |
|
|
|
|
|
|
|
use rocket::{ |
|
|
|
fairing::{Fairing, Info, Kind}, |
|
|
@ -326,7 +326,16 @@ pub fn file_exists(path: &str) -> bool { |
|
|
|
|
|
|
|
pub fn write_file(path: &str, content: &[u8]) -> Result<(), crate::error::Error> { |
|
|
|
use std::io::Write; |
|
|
|
let mut f = File::create(path)?; |
|
|
|
let mut f = match File::create(path) { |
|
|
|
Ok(file) => file, |
|
|
|
Err(e) => { |
|
|
|
if e.kind() == ErrorKind::PermissionDenied { |
|
|
|
error!("Can't create '{}': Permission denied", path); |
|
|
|
} |
|
|
|
return Err(From::from(e)); |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
f.write_all(content)?; |
|
|
|
f.flush()?; |
|
|
|
Ok(()) |
|
|
|