Pārlūkot izejas kodu

Exception handling of reset(R&&) corrected (fixes #55, fixes #56).

main
offa pirms 7 gadiem
vecāks
revīzija
43cad551f2
1 mainītis faili ar 3 papildinājumiem un 1 dzēšanām
  1. +3
    -1
      include/unique_resource.h

+ 3
- 1
include/unique_resource.h Parādīt failu

@@ -20,6 +20,7 @@

#pragma once

#include "scope_exit.h"
#include <utility>
#include <type_traits>

@@ -141,10 +142,11 @@ namespace sr
template<class RR>
void reset(RR&& r)
{
auto se = make_scope_exit([this, &r] { get_deleter()(r); });
reset();

m_resource = move_assign_if_noexcept(r);
m_execute_on_destruction = true;
se.release();
}

void release()

Notiek ielāde…
Atcelt
Saglabāt