Skip to content

fix(core): resolve latent bugs in grid filtering, MySQL escaping, export formatters, and staging buffer disposal - #699

Merged
ZhuchkaTriplesix merged 1 commit into
devfrom
issue/698-resolve-latent-bugs
Sep 6, 2026
Merged

fix(core): resolve latent bugs in grid filtering, MySQL escaping, export formatters, and staging buffer disposal#699
ZhuchkaTriplesix merged 1 commit into
devfrom
issue/698-resolve-latent-bugs

Conversation

@ZhuchkaTriplesix

Copy link
Copy Markdown
Member

Closes #698

Summary of Changes

  1. Row Filtering Bypassed in Grid with StagingBuffer & Mutation Index Collision:

    • Added rowIndicesMapping to VirtualResultGrid.
    • In ResultsTab, cached filtered indices and passed them to VirtualResultGrid.
    • VirtualResultGrid renders rows when rowIndicesMapping is present, while mapping visual sorted rows back to underlying buffer row indices via _toModelRowIndex.
    • Fixed _openInspector, toggleDeleteRow, and revertRow shortcut handlers to route through _toModelRowIndex.
  2. SQL Syntax Error / Escape Issue with Backslashes in MySQL DML Generation:

    • In TableMutationEngine, strings for SqlDialect.mysql now escape backslashes \ with \\ before escaping quotes.
  3. Leading Zeros Stripping in JSON Export:

    • In ResultGridSelection.toJson, strings with leading zeros (e.g. ^0\d+$) are preserved as strings without being coerced to numbers.
  4. TSV Export / Copy Delimiter Corruption on Newlines & Tabs:

    • In ResultGridSelection.toTsv, values containing \t, \n, \r, or " are now escaped with enclosing quotes and double quotes per standard TSV escaping.
  5. StagingBuffer Memory Leak on Query Tab Close:

    • In SqlQueryTabSession.dispose, explicitly calls stagingBuffer?.dispose().

Verification

  • flutter analyze: 0 issues found.
  • All unit, widget, and workspace tests passing.

…ort formatters, and staging buffer disposal (#698)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant