|
@@ -34,15 +34,11 @@ library Address {
|
|
|
* ====
|
|
|
*/
|
|
|
function isContract(address account) internal view returns (bool) {
|
|
|
- // This method relies on extcodesize, which returns 0 for contracts in
|
|
|
- // construction, since the code is only stored at the end of the
|
|
|
- // constructor execution.
|
|
|
+ // This method relies on extcodesize/address.code.length, which returns 0
|
|
|
+ // for contracts in construction, since the code is only stored at the end
|
|
|
+ // of the constructor execution.
|
|
|
|
|
|
- uint256 size;
|
|
|
- assembly {
|
|
|
- size := extcodesize(account)
|
|
|
- }
|
|
|
- return size > 0;
|
|
|
+ return account.code.length > 0;
|
|
|
}
|
|
|
|
|
|
/**
|