3636
3737namespace Replication
3838{
39- class Replicator :
39+ class Replicator final :
4040 public Firebird::StdPlugin<Firebird::IReplicatedSessionImpl<Replicator, Firebird::CheckStatusWrapper> >
4141 {
4242 typedef Firebird::ObjectsArray<Firebird::string> NameCache;
4343 typedef Firebird::HalfStaticArray<SavNumber, 16 > SavepointStack;
4444
4545 struct BatchBlock
4646 {
47- Block header;
47+ Block header{} ;
4848 Firebird::UCharBuffer* buffer;
4949 NameCache atoms;
5050 ULONG lastAtom;
@@ -54,10 +54,9 @@ namespace Replication
5454 : buffer(NULL ), atoms(pool),
5555 lastAtom(MAX_ULONG), flushes(0 )
5656 {
57- memset (&header, 0 , sizeof (Block));
5857 }
5958
60- ULONG getSize () const
59+ ULONG getSize () const noexcept
6160 {
6261 return (ULONG) buffer->getCount ();
6362 }
@@ -138,20 +137,20 @@ namespace Replication
138137 }
139138 };
140139
141- class Transaction :
140+ class Transaction final :
142141 public Firebird::AutoIface<Firebird::IReplicatedTransactionImpl<Transaction, Firebird::CheckStatusWrapper> >
143142 {
144143 public:
145144 explicit Transaction (Replicator* replicator, Firebird::ITransaction* trans)
146145 : m_replicator(replicator), m_transaction(trans), m_data(replicator->getPool ())
147146 {}
148147
149- BatchBlock& getData ()
148+ BatchBlock& getData () noexcept
150149 {
151150 return m_data;
152151 }
153152
154- Firebird::ITransaction* getInterface ()
153+ Firebird::ITransaction* getInterface () noexcept
155154 {
156155 return m_transaction.getPtr ();
157156 }
@@ -259,7 +258,7 @@ namespace Replication
259258 struct GeneratorValue
260259 {
261260 Jrd::QualifiedName name;
262- SINT64 value;
261+ SINT64 value = 0 ;
263262 };
264263
265264 typedef Firebird::Array<GeneratorValue> GeneratorCache;
0 commit comments