From 9bb83605e9f918592a91cb8d17e2f127af8b4a73 Mon Sep 17 00:00:00 2001 From: Simon Binder Date: Sun, 17 May 2020 14:42:48 +0200 Subject: [PATCH] Don't crash when analyzing incomplete CREATE TABLE statement (#578) --- .../lib/src/analyzer/moor/create_table_reader.dart | 2 ++ moor_generator/lib/src/analyzer/moor/parser.dart | 5 ++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/moor_generator/lib/src/analyzer/moor/create_table_reader.dart b/moor_generator/lib/src/analyzer/moor/create_table_reader.dart index 7c44da16..fdc854e1 100644 --- a/moor_generator/lib/src/analyzer/moor/create_table_reader.dart +++ b/moor_generator/lib/src/analyzer/moor/create_table_reader.dart @@ -35,6 +35,8 @@ class CreateTableReader { span: stmt.tableNameToken.span, message: 'Could not extract schema information for this table: $e', )); + + return null; } final foundColumns = {}; diff --git a/moor_generator/lib/src/analyzer/moor/parser.dart b/moor_generator/lib/src/analyzer/moor/parser.dart index 801abccc..0e3c7444 100644 --- a/moor_generator/lib/src/analyzer/moor/parser.dart +++ b/moor_generator/lib/src/analyzer/moor/parser.dart @@ -63,7 +63,10 @@ class MoorParser { } for (final reader in createdReaders) { - createdEntities.add(await reader.extractTable(step.mapper)); + final moorTable = await reader.extractTable(step.mapper); + if (moorTable != null) { + createdEntities.add(moorTable); + } } final analyzedFile = ParsedMoorFile(