Sfoglia il codice sorgente

Optimize condition in _disableInitializers (#3787)

Mathis Gontier Delaunay 2 anni fa
parent
commit
88a3f95715
2 ha cambiato i file con 2 aggiunte e 1 eliminazioni
  1. 1 0
      CHANGELOG.md
  2. 1 1
      contracts/proxy/utils/Initializable.sol

+ 1 - 0
CHANGELOG.md

@@ -4,6 +4,7 @@
 
  * `ReentrancyGuard`: Add a `_reentrancyGuardEntered` function to expose the guard status. ([#3714](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3714))
  * `ERC20Votes`: optimize by using unchecked arithmetic. ([#3748](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3748))
+ * `Initializable`: optimize `_disableInitializers` by using `!=` instead of `<`. ([#3787](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3787))
 
 ## Unreleased
 

+ 1 - 1
contracts/proxy/utils/Initializable.sol

@@ -143,7 +143,7 @@ abstract contract Initializable {
      */
     function _disableInitializers() internal virtual {
         require(!_initializing, "Initializable: contract is initializing");
-        if (_initialized < type(uint8).max) {
+        if (_initialized != type(uint8).max) {
             _initialized = type(uint8).max;
             emit Initialized(type(uint8).max);
         }