Kevin Millikin b38c00a341 Avoid triggering an ASSERT in TypedData
When a zero-sized string occurs as that last string in the Kernel
string table, the code would attempt to compute the address that lies
one element past the end of the string table's backing store.  Though
this is benign in C++ as long as that address is not dereferenced, it
would trigger an assertion failure in TypedData::DataAddr.

Avoid triggering the assertion by performing the address arithmetic in
the caller based on DataAddr(0) rather than relying on the address
arithmetic in DataAddr.

This fixes issue 30420.

BUG=https://github.com/dart-lang/sdk/issues/30420
R=aam@google.com, asiva@google.com

Review-Url: https://codereview.chromium.org/3003023002 .
2017-08-22 09:27:24 +02:00
2017-08-18 08:51:40 -07:00
2017-08-04 22:19:35 -07:00
2017-06-24 13:41:39 +02:00
2017-08-21 15:02:10 +02:00
2017-08-21 18:56:16 +02:00
2017-03-23 15:26:06 -07:00
2016-09-23 07:47:36 -07:00
2017-07-12 14:30:39 -07:00
2015-07-16 09:51:56 -07:00
2017-08-18 08:51:40 -07:00
2015-09-18 13:18:10 -07:00
2017-08-08 12:30:01 -07:00

Dart

Dart is an open-source, scalable programming language, with robust libraries and runtimes, for building web, server, and mobile apps.

Using Dart

Visit the dartlang.org to learn more about the language, tools, getting started, and more.

Browse pub.dartlang.org for more packages and libraries contributed by the community and the Dart team.

Building Dart

If you want to build Dart yourself, here is a guide to getting the source, preparing your machine to build the SDK, and building.

There are more documents on our wiki.

Contributing to Dart

The easiest way to contribute to Dart is to file issues.

You can also contribute patches, as described in Contributing.

License & patents

See LICENSE and PATENTS.

S
Description
No description provided
Readme BSD-3-Clause 1.4 GiB
Languages
Dart 84.6%
C++ 13%
Python 0.7%
JavaScript 0.5%
HTML 0.4%
Other 0.5%