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

IJHack / QtPass / 28631719104
63%

Build:
DEFAULT BRANCH: main
Ran 03 Jul 2026 01:14AM UTC
Jobs 1
Files 81
Run time 1min
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

03 Jul 2026 01:08AM UTC coverage: 56.387% (+1.0%) from 55.4%
28631719104

push

github

web-flow
fix: stop ConfigDialog from silently corrupting saved settings (#1602)

* fix: stop ConfigDialog from silently corrupting saved settings

Several config-dialog paths overwrote or destroyed persisted settings on a
normal OK click:

- applySettings() never restored the pwgen path or password-generation
  configuration, so readSettings() wrote the .ui defaults back over the
  user's saved length/charset/custom-characters/usePwgen on every OK. Restore
  them via setPwgenPath()/setPasswordConfiguration() before toggling usePwgen.
- getPasswordConfiguration() read the character line edit unconditionally,
  clobbering the saved custom charset with a builtin string whenever a builtin
  set was selected. Only read the line edit while CUSTOM is selected; otherwise
  preserve the persisted custom value.
- setProfiles() populated the profile table with sorting enabled, so writing
  into the sort column moved rows between setItem() calls, landing path and
  signing-key cells in the wrong profile's row and destroying profile data on
  save. Disable sorting during population and locate the current row by item
  pointer.
- on_addButton_clicked() re-enabled sorting and then read item(n, 0), which
  after the re-sort could be an existing profile, so a new profile's edit and
  selection landed on and renamed the wrong profile. Track the new item by
  pointer.
- on_profileTable_cellDoubleClicked() dereferenced the path cell without a
  null check, crashing on rows with no path item.
- validate() derived the OK-button state from a single changed item, re-enabling
  OK while another row still had an empty required field, allowing an
  empty-named profile to be saved and then silently dropped.

QtPassSettings::setProfiles() cleared the overloaded "profile" key, which also
holds the active-profile name (getProfile), silently switching the active
password store on every save. Preserve and restore the active-profile scalar.

Adds regression tests: active-profile preservation a... (continued)

24 of 30 new or added lines in 2 files covered. (80.0%)

8 existing lines in 1 file now uncovered.

3792 of 6725 relevant lines covered (56.39%)

30.41 hits per line

Uncovered Changes

Lines Coverage ∆ File
6
45.75
10.22% src/configdialog.cpp

Coverage Regressions

Lines Coverage ∆ File
8
0.0
0.0% src/qrc_resources.cpp
Jobs
ID Job ID Ran Files Coverage
1 28631719104.1 03 Jul 2026 01:14AM UTC 81
56.39
GitHub Action Run
Source Files on build 28631719104
  • Tree
  • List 81
  • Changed 5
  • Source Changed 5
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #28631719104
  • 0a7e4f71 on github
  • Prev Build on main (#28526360412)
  • Next Build on main (#28634577885)
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