Download Latest Version flamerobin-portable-26.7.1-x86.zip (19.8 MB)
Email in envelope

Get an email when there's a new version of FlameRobin

Home / v26.6.17
Name Modified Size InfoDownloads / Week
Parent folder
flamerobin_26.6.17_amd64.snap 2026-06-19 24.7 MB
FlameRobin-26.6.17-x64.msi 2026-06-19 4.5 MB
flamerobin-portable-26.6.17-x64.zip 2026-06-19 20.7 MB
FlameRobin-26.6.17-x86.msi 2026-06-19 4.1 MB
flamerobin-portable-26.6.17-x86.zip 2026-06-19 19.8 MB
flamerobin-26.6.17.flatpak 2026-06-19 14.6 MB
flamerobin-26.6.17.deb 2026-06-19 85.7 MB
flamerobin-macos-26.6.17.zip 2026-06-19 7.2 MB
FlameRobin 26.6.17 source code.tar.gz 2026-06-19 1.3 MB
FlameRobin 26.6.17 source code.zip 2026-06-19 1.8 MB
README.md 2026-06-19 2.3 kB
Totals: 11 Items   184.4 MB 0

FlameRobin 26.6.17 Release Notes

This release addresses critical connection and runtime bugs, including a crash under Firebird 3.x and an alignment crash on GCC/Linux when handling high-precision NUMERIC fields.

Fixes & Enhancements

  • 128-bit Integer GCC/Linux Alignment Crash (Issue [#596]):
  • Root Cause: When executing queries containing aggregate functions (e.g. SUM()) over millions of rows on fields stored as 128-bit integers (INT128 / NUMERIC(18,4)), FlameRobin crashed on GCC/Linux with a fatal exception / segmentation fault. The compiler generated aligned vector SSE instructions (movaps/movdqa) for operations on native __int128 types, which faulted when accessing the unaligned i128 field inside the packed DOUBLE_DABBLE_UNION structure (at offset 20).
  • Fix: Migrated direct operations on the unaligned union member to safe std::memcpy calls and implemented safe native 64-bit integer arithmetic on lowPart/highPart components for negation and decrement operations. This completely avoids unaligned 128-bit CPU instructions on Linux.

  • Database Connection Stability for Firebird 3.x (Issue [#618]):

  • Root Cause: An uninitialized integer variable odsM inside the DatabaseInfo class occasionally contained garbage memory values of 13 or higher. This led FlameRobin to assume the target database supported Firebird 4.0+ features and query Firebird 4-specific system columns (such as rdb$sql_security in rdb$database) prior to reading the database version from the server. Connecting to a Firebird 3.x database (which does not contain this column) subsequently failed with an SQL metadata error.
  • Fix:
    • All primitive member variables inside the DatabaseInfo class in database.h have been properly initialized inline to safe default values (0 and false).
    • The execution order in Database::connect in database.cpp was corrected to ensure databaseInfoM.load() is executed to retrieve the actual ODS version from the Firebird server before calling loadDatabaseInfo() to fetch database properties.

All 16 unit tests have run and passed successfully.

Source: README.md, updated 2026-06-19