blob: 0fe52113848165085e8f36936c4f965dd1d8f625 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
// file : odb/section.cxx
// license : GNU GPL v2; see accompanying LICENSE file
#include <odb/section.hxx>
namespace odb
{
void section::
disarm ()
{
transaction& t (transaction::current ());
t.callback_unregister (this);
state_.armed = 0;
}
void section::
transacion_callback (unsigned short event, void* key, unsigned long long)
{
section& s (*static_cast<section*> (key));
if (event == transaction::event_rollback && s.state_.restore)
s.state_.changed = 1;
s.state_.armed = 0;
s.state_.restore = 0;
}
}
|