"Dart Error: Internal Dart data pointers have been acquired, please release them using Dart_TypedDataReleaseData."
- Dominant language
- Dart
- Stars
- 275
- Forks
- 144
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 47
Description
Hi there,
I'm using dart:ffi on flutter to use sqlite from c code. However, I got a strange error:
```
[VERBOSE-2:shell.cc(210)] Dart Error: Internal Dart data pointers have been acquired, please release them using Dart_TypedDataReleaseData.
Lost connection to device.
```
I guess it's because some raw bytes are allocated but not released, however I've no idea how to fix this, `Dart_TypedDataReleaseData` seems to be some dart VM function.
# Related code
Here is the code I suspect that causes the problem:
```dart
Uint8List readColumnByIndexAsBytes(int columnIndex) {
_checkIsCurrentRow();
int length = bindings.sqlite3_column_bytes(_statement, columnIndex);
Pointer buffer =
bindings.sqlite3_column_blob(_statement, columnIndex);
return buffer.asTypedList(length);
}
```
# Frameworks
Flutter (Channel beta, 1.23.0-18.1.pre, on Mac OS X 10.15.4 19E287 x86_64, locale en-CN)
Dart SDK version: 2.11.0-213.1.beta (beta) (Wed Oct 14 10:49:52 2020 +0200) on "macos_x64"
Thanks!
Contributor guide
Assessment
This issue has not been assessed yet.