Fix ABI encoding of empty string literal.

This commit is contained in:
chriseth 2017-06-22 17:55:06 +02:00
parent f36e021ffc
commit 83ea7793d9
2 changed files with 2 additions and 1 deletions

View File

@ -15,6 +15,7 @@ Bugfixes:
* Type Checker: Make UTF8-validation a bit more sloppy to include more valid sequences.
* Fixed crash concerning non-callable types.
* Unused variable warnings no longer issued for variables used inside inline assembly.
* Code Generator: Fix ABI encoding of empty literal string.
* Inline Assembly: Enforce function arguments when parsing functional instructions.
### 0.4.11 (2017-05-03)

View File

@ -128,7 +128,7 @@ void CompilerUtils::storeInMemoryDynamic(Type const& _type, bool _padToWordBound
m_context << Instruction::DUP1;
storeStringData(bytesConstRef(str->value()));
if (_padToWordBoundaries)
m_context << u256(((str->value().size() + 31) / 32) * 32);
m_context << u256(max<size_t>(32, ((str->value().size() + 31) / 32) * 32));
else
m_context << u256(str->value().size());
m_context << Instruction::ADD;