Description of problem: I can't prevent evolution appending an autogenerated signature to my composed emails, other than by turning it off on a per-email basis. Version-Release number of selected component (if applicable): evolution-1.5.93-1, also 1.5.92.2-2 How reproducible: 100% Steps to Reproduce: 1. Tools->Settings, select default account, Edit 2. Select 'None' in the Signature spin button, then Okay 3. Select default account, Edit, observe signature setting 4. Compose new email, observe autogenerated signature Actual results: Signature setting does not stick in settings. New messages contain autogenerated signature. Expected results: Signature setting can be altered.
Works for me in Evo 2.0.0, and, IIRC, in 1.5.94.1 What do the following commands output for you? gconftool-2 --get /apps/evolution/mail/accounts gconftool-2 --get /apps/evolution/mail/signatures
[<?xml version="1.0"?> <account name="tim" uid="0" enabled="true"><identity><name>Tim Waugh</name><addr-spec>tim</addr-spec><signature uid="1092049501.6373.0"/></identity><source save-passwd="false" keep-on-server="false" auto-check="true" auto-check-timeout="1"><url>mbox:/var/spool/mail/tim</url></source><transport save-passwd="false"><url>sendmail:</url></transport><drafts-folder>email://local@local/Drafts</drafts-folder><sent-folder>email://local@local/Sent</sent-folder><auto-cc always="false"><recipients></recipients></auto-cc><auto-bcc always="false"><recipients></recipients></auto-bcc><pgp encrypt-to-self="true" always-trust="false" always-sign="true" no-imip-sign="false"/><smime sign-default="false" encrypt-default="false" encrypt-to-self="false"/></account> ,<?xml version="1.0"?> <account name="tim" uid="1" enabled="true"><identity><name>Tim Waugh</name><addr-spec>tim</addr-spec><reply-to></reply-to><organization></organization><signature uid="1092049501.6373.0"/></identity><source save-passwd="true" keep-on-server="false" auto-check="true" auto-check-timeout="20"><url>pop://tim.waugh.com</url></source><transport save-passwd="false"><url>smtp://smtp.ntlworld.com</url></transport><drafts-folder>email://local@local/Drafts</drafts-folder><sent-folder>email://local@local/Sent</sent-folder><auto-cc always="false"><recipients></recipients></auto-cc><auto-bcc always="false"><recipients></recipients></auto-bcc><pgp encrypt-to-self="true" always-trust="false" always-sign="true" no-imip-sign="false"><key-id></key-id></pgp><smime sign-default="false" encrypt-default="false" encrypt-to-self="false"><sign-key-id></sign-key-id><encrypt-key-id></encrypt-key-id></smime></account> ,<?xml version="1.0"?> <account name="nick" uid="2" enabled="true"><identity><name>Nick Waugh</name><addr-spec>nick</addr-spec><reply-to></reply-to><organization></organization><signature uid="1092049501.6373.0"/></identity><source save-passwd="true" keep-on-server="false" auto-check="false" auto-check-timeout="0"><url>pop://nick.waugh7.com</url></source><transport save-passwd="false"><url>smtp://smtp.ntlworld.com</url></transport><drafts-folder>email://local@local/Drafts</drafts-folder><sent-folder>email://local@local/Sent</sent-folder><auto-cc always="false"><recipients></recipients></auto-cc><auto-bcc always="false"><recipients></recipients></auto-bcc><pgp encrypt-to-self="false" always-trust="false" always-sign="false" no-imip-sign="false"><key-id></key-id></pgp><smime sign-default="false" encrypt-default="false" encrypt-to-self="false"/></account> ] [<?xml version="1.0"?> <signature name="Autogenerated" uid="1092049501.6373.0" auto="true" format="text/html"/> ]
Thanks for the info. At stage 3 in your "Steps to Reproduce" above, what setting do you observe? "None", or "Autogenerated". If you run gconf-editor, browse to /apps/evolution/mail/accounts, you will see a list of mini-XML files. Scroll across and you will see an element <signature uid="UID-VALUE-MATCHING-THE-ONE-IN-/apps/evolution/mail/signatures"/> To have "None" for the signature, I'd expect you to be seeing a blank UID, i.e. an element like <signature uid=""/> Alternatively you can use gconftool-2 to extract the value as a list of short XML files to stdout. Please retry the "Steps to Reproduce", reporting the state of the <signature> element (if any) of the relevant account at each stage. Does it ever change? Thanks.
At step 3 it reverted to 'Autogenerated'. When trying again with gconf-editor open, I never see an empty uid tag. It always has the autogenerated UID.
Thanks. Looks like it's failing to write the changed value back into GConf, for some reason. I'm going to dig into the relevant part of the source code...
Notes to self about this: Code in evolution/mail/mail-account-gui.c: sig_fill_menu populates the menu, uses g_object_set_data (menu_item, "sig", ptr to ESignature), with NULL for the "None" entry. callback sig_activate is called when you edit that part of the GUI; it sets gui->sig_uid, but does this force a writeback to GConf? Perhaps not, and this may be the bug... mail_account_gui_save is called on clicking on the OK button; this ought to be making the changes to GConf...
If you run evolution from the command line, does anything get output to stdout when you try to reproduce this bug? Which of the above accounts are you able to reproduce this bug on? All of them, or just some of them? Are you able to manually edit the GConf key by editing the signature UID in the gconf-editor? Can you give me access to a machine where this is reproducable?
evolution-shell-Message: Killing old version of evolution-data-server... asked to activate component_id `OAFIID:GNOME_Evolution_Addressbook_Component:2.0' asked to activate component_id `OAFIID:GNOME_Evolution_Addressbook_Component:2.0' asked to activate component_id `OAFIID:GNOME_Evolution_Addressbook_Autocompletion_ConfigControl:2.0' asked to activate component_id `OAFIID:GNOME_Evolution_SMime_CertificateManager_ConfigControl:2.0' Here is the output from the command line invocation: (evolution:3148): Gtk-CRITICAL **: file gtktreesortable.c: line 137 (gtk_tree_sortable_set_sort_column_id): assertion `GTK_IS_TREE_SORTABLE (sortable)' failed account gui setup checking writable option 'auth' perms=00000040 checking writable option 'use_ssl' perms=00000010 checking writable option 'keep_on_server' perms=00000000 checking writable option 'disable_extensions' perms=00000000 checking writable option 'auth' perms=00000040 checking writable option 'use_ssl' perms=00000010 checking writable option 'auth' perms=00000040 checking writable option 'use_ssl' perms=00000010 checking writable option 'auth' perms=00000040 checking writable option 'use_ssl' perms=00000010 checking writable option 'auth' perms=00000040 checking writable option 'use_ssl' perms=00000010 checking writable option 'auth' perms=00000040 checking writable option 'use_ssl' perms=00000010 checking writable option 'keep_on_server' perms=00000000 checking writable option 'disable_extensions' perms=00000000 The problem is visible on all three accounts. If I change the setting manually with gconf-editor, it sticks. If I then change the setting in evolution to "Autogenerated", click OK, and then try changing it back to "None", it stays at "Autogenerated".
I'd thought that perhaps the complex logic that determines if an account has changed was failing due to some detail of the account, but I just tried the first of your accounts on my system, and it works fine. What architecture is this on, BTW?
This is on an i686 machine.
*** Bug 132215 has been marked as a duplicate of this bug. ***
Is this problem still present on Fedora Core 6 or later?
Don't think so.