Project

General

Profile

Bug #1409

Crash with no Identity

Added by kater over 4 years ago. Updated 3 days ago.

Status:
Resolved
Priority:
Low
Assignee:
-
Category:
-
Target version:
-
Start date:
05/29/2016
Due date:
% Done:

100%

Estimated time:
Version:
0.12.4
OS:
Any

Description

Start with a fresh installation of quassel. Skip create identity. Try to connect to some network.

It crash while accessing a null reference. From a null pointer to a an Identity object which, of course, does not exist.
In the patch, the returned identity is checked if it exist. If not, no new CertIdentity is created and a warning is printed.

Todo:
- Disable GUI components to connect to a network if not identity exist.
- Client::identity() should not returns pointers. Const references are fine.
If no identify exist, may throw an exception. Or return a dummy identify.

0001.patch (1.02 KB) 0001.patch kater, 05/30/2016 12:11 AM

Associated revisions

Revision c144bdee (diff)
Added by Shane Synan 3 days ago

client: Fix settings crash on missing net identity

When fetching the client identity in Network settings, make sure the
identity exists before trying to convert it into a CertIdentity.

This resolves a crash if an identity is deleted improperly or if no
identities are specified.

Test case:
1. Clear the configuration for Quassel monolithic
2. Start Quassel monolithic
3. Cancel the setup wizard (before creating any identity)
4. Go to Settings -> Configure Quassel... (F7)
5. Navigate to IRC -> Identities, confirm that no identity exists
6. Navigate to IRC -> Networks
7. Add a new network (details don't matter)
8. Observe results

NOTE: This fix was contributed by "kater" on the Quassel IRC bug
tracker. I'm not sure of a better way to provide attribution, as I
don't know if they want their email address part of Quassel's public
record.

See the original patch here:
https://bugs.quassel-irc.org/issues/1409

Fixes #1409

History

#1 Updated by digitalcircuit 3 months ago

Thank you for this! I'll try looking into filing a pull request to get this issue resolved, including making sure the rest of the UI doesn't crash.

#2 Updated by digitalcircuit 2 months ago

I have filed a pull request featuring your patch. If you'd prefer attribution done differently, e.g. setting the commit author name/email, just let me know!

Thank you for your effort and patience with this.

#3 Updated by Anonymous 3 days ago

  • Status changed from New to Resolved
  • % Done changed from 0 to 100

Also available in: Atom PDF