Le 31/10/2011 21:36, François Revol a écrit : >>> + Transaction transaction(this, fRootNode->BlockNumber()); >>> + fRootNode->WriteLockInTransaction(transaction); >>> + attr.Write(transaction, cookie, 0, (uint8_t *)&id,&len, NULL); >> >> No space after cast again, no space before the asterisk. >> Besides, this is all wrong: it should get the transaction from its >> caller, or else this won't work right when called from the initializer. > > That I was wondering, but since in one place it has a transaction opened > already and another not... > Would it be ok to pass the transaction as arg and do this in the first case (even though it contains a Attribute::Create() call ? Transaction transaction(this, fRootNode->BlockNumber()); fRootNode->WriteLockInTransaction(transaction); CreateVolumeID(transaction); transaction.Done(); François.