• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

IJHack / QtPass / 24962433832 / 1
55%
main: 55%

Build:
DEFAULT BRANCH: main
Ran 26 Apr 2026 05:21PM UTC
Files 72
Run time 2s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

26 Apr 2026 05:16PM UTC coverage: 27.622%. Remained the same
24962433832.1

push

github

web-flow
fix: don't schedule initial focus pulse before init() completes (#1187)

Reproduced via SIGSEGV on a fresh-config launch:

  #0  QLineEdit::selectAll()
  #1  MainWindow::focusInput()
  #2  ... (timer event)
  #3  QEventLoop::exec()       ← nested loop from QDialog::exec()
  #4  ConfigDialog::wizard()
  #5  MainWindow::config()
  #6  QtPass::init()
  #7  MainWindow::MainWindow()

`MainWindow`'s constructor was scheduling
`QTimer::singleShot(10, this, SLOT(focusInput()))` *before* calling
`m_qtPass->init()`. On a fresh install (no `.gpg-id`/invalid config),
`init()` calls `MainWindow::config()` which runs the first-run wizard
via `QDialog::exec()` — i.e. a nested event loop. The 10 ms timer
fires inside that loop while the main window has not yet been shown,
`focusInput()` runs, and `QLineEdit::selectAll()` crashes inside Qt
because the line-edit's owning top-level isn't visible/realized yet.

Move the timer scheduling to *after* `init()` returns successfully,
and bail out of the constructor early when init fails. The success
path is unchanged for normal launches; the wizard path no longer
queues the focus pulse during the nested loop, and the failure path
no longer queues it before destruction.

1825 of 6607 relevant lines covered (27.62%)

26.95 hits per line

Source Files on job 24962433832.1
  • Tree
  • List 72
  • Changed 3
  • Source Changed 3
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 24962433832
  • 35a6ad84 on github
  • Prev Job for on main (#24961970855.1)
  • Next Job for on main (#24963287061.1)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc