Parcourir la source

Cleaner error handling in dds::open

default_compile_flags
vector-of-bool il y a 3 ans
Parent
révision
1bbd32aa05
1 fichiers modifiés avec 2 ajouts et 7 suppressions
  1. +2
    -7
      src/dds/util/fs.cpp

+ 2
- 7
src/dds/util/fs.cpp Voir le fichier

@@ -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;

Chargement…
Annuler
Enregistrer