diff --git a/src/nut/config/nut_macros.h b/src/nut/config/nut_macros.h index 260a786..c4e08ae 100644 --- a/src/nut/config/nut_macros.h +++ b/src/nut/config/nut_macros.h @@ -98,7 +98,7 @@ public : \ m_##name##Id = name->primaryValue().value(); \ } \ void class::write(Nut::Row name){ \ - write(qSharedPointerObjectCast(name)); \ + write(qSharedPointerDynamicCast(name)); \ } keytype class::read##Id() const{ \ if (m_##name) \ return m_##name->primaryValue().value(); \ diff --git a/src/nut/core/query.h b/src/nut/core/query.h index bd74d31..d73a20f 100644 --- a/src/nut/core/query.h +++ b/src/nut/core/query.h @@ -384,7 +384,8 @@ Q_OUTOFLINE_TEMPLATE RowList Query::toList(int count) int master = data.masters[i]; auto tableset = levels[master].lastRow.data()->childTableSet( data.table->className()); - tableset->add(row); + if (tableset) + tableset->add(row); //set key { @@ -398,7 +399,6 @@ Q_OUTOFLINE_TEMPLATE RowList Query::toList(int count) Q_ARG(Nut::Row, levels[master].lastRow)); - qDebug() << "data.masterFields[master]=" << setterName << ok; } }