Bug 844109

Summary: revelation crashes when selecting "Preferences"
Product: [Fedora] Fedora Reporter: Jeremy Fitzhardinge <jeremy>
Component: revelationAssignee: Jef Spaleta <jspaleta>
Status: CLOSED WORKSFORME QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 18CC: jspaleta, m.e, pingou, sanjay.ankur
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-05-19 12:39:44 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jeremy Fitzhardinge 2012-07-28 23:23:39 UTC
Description of problem:
When trying to edit preferences, it crashes with a python exception

Version-Release number of selected component (if applicable):
revelation-0.4.14-1.fc17.x86_64

How reproducible:
Always

Steps to Reproduce:
1. Start revelation
2. Choose Edit -> Preferences
3.
  
Actual results:
Exception

Expected results:
Preferences editing

Additional info:


Traceback (most recent call last):
  File "/usr/bin/revelation", line 206, in <lambda>
    action.connect("activate",		lambda w: self.prefs())
  File "/usr/bin/revelation", line 1527, in prefs
    dialog.run_unique(Preferences, self, self.config)
  File "/usr/lib64/python2.7/site-packages/revelation/dialog.py", line 1324, in run_unique
    d = create_unique(dialog, *args)
  File "/usr/lib64/python2.7/site-packages/revelation/dialog.py", line 1282, in create_unique
    UNIQUE_DIALOGS[dialog] = dialog(*args)
  File "/usr/bin/revelation", line 1623, in __init__
    self.__init_section_password(self.page_general)
  File "/usr/bin/revelation", line 1762, in __init_section_password
    ui.config_bind(self.config, "passwordgen/punctuation", self.check_punctuation_chars)
  File "/usr/lib64/python2.7/site-packages/revelation/ui.py", line 182, in config_bind
    id = cfg.monitor(key, cb_get, widget)
  File "/usr/lib64/python2.7/site-packages/revelation/config.py", line 150, in monitor
    callback(key, self.get(key), userdata)
  File "/usr/lib64/python2.7/site-packages/revelation/config.py", line 129, in get
    raise ConfigError
ConfigError

Comment 1 Jef Spaleta 2012-07-29 01:03:07 UTC
this is most assuredly the result of the gconf schema drift.

if you remove the gconf revelation directory under your user and relogin or otherwise make gconf restart... i bet the problem clears up for you.


This gconf schema change is the thing holding this package in testing.  Once you blow away your gconf settings for revelation and let them regenerate, everything works as expected. 

I am at a loss as to how to prevent this for users via a change in the packaging.  If you have any ideas on how I can prevent this from happening for users I'm all ears.

-jef

Comment 2 Ankur Sinha (FranciscoD) 2013-03-06 23:43:35 UTC
*** Bug 912041 has been marked as a duplicate of this bug. ***