Index: trac/config.py
===================================================================
--- trac/config.py	(revision 8367)
+++ trac/config.py	(working copy)
@@ -208,8 +208,15 @@
                             fileobj.write('# %s = <inherited>\n' % key)
                         else:
                             val = val.replace(CRLF, '\n').replace('\n', '\n ')
-                            fileobj.write('%s = %s\n' % (key,
-                                                         val.encode('utf-8')))
+                            try:
+                                val = val.encode('utf-8')
+                            except UnicodeDecodeError, e:
+                                pass # we ignore this
+                            try:
+                                fileobj.write('%s = %s\n' % (key, val))
+                            except UnicodeDecodeError, e:
+                                continue # we go forward writing the rest
                     fileobj.write('\n')
             finally:
                 fileobj.close()
