소스 검색

Cleaner error handling in dds::open

default_compile_flags
vector-of-bool 3 년 전
부모
커밋
1bbd32aa05
1개의 변경된 파일2개의 추가작업 그리고 7개의 파일을 삭제
  1. +2
    -7
      src/dds/util/fs.cpp

+ 2
- 7
src/dds/util/fs.cpp 파일 보기

@@ -7,13 +7,8 @@
using namespace dds;

std::fstream dds::open(const fs::path& filepath, std::ios::openmode mode, std::error_code& ec) {
std::fstream ret;
auto mask = ret.exceptions() | std::ios::badbit;
ret.exceptions(mask);

try {
ret.open(filepath.string(), mode);
} catch (const std::ios::failure&) {
std::fstream ret{filepath, mode};
if (!ret) {
ec = std::error_code(errno, std::system_category());
}
return ret;

Loading…
취소
저장