Description
In live.gnome.org setting prefences after login is failed. The error Message is following: TypeError expected a character buffer object
Steps to reproduce
- log in live.gnome.org
- click settings
- click preferences
- click save
Example
Component selection
- general
Details
A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred.
1.
/usr/local/www/moin/moin-1.8.7/MoinMoin/request/__init__.py in run (self=<MoinMoin.request.request_modpython.Request object>)
1. 1309 self.page.send_page()
2. 1310 else:
3. 1311 handler(self.page.page_name, self)
4. 1312
5. 1313 # every action that didn't use to raise MoinMoinFinish must call this now:
* handler = <function execute>
* self = <MoinMoin.request.request_modpython.Request object>
* self.page = <MoinMoin.Page.Page object>
* self.page.page_name = u'TranslationProject/GitHowTo'
2.
/usr/local/www/moin/moin/MoinMoin/action/userprefs.py in execute (pagename=u'TranslationProject/GitHowTo', request=<MoinMoin.request.request_modpython.Request object>)
1. 93 return Page.Page(request, pagename).send_page()
2. 94
3. 95 text, title, msg_class, msg = _create_page(request)
4. 96 if title:
5. 97 # XXX: we would like to make "Settings" here a link back
* text undefined
* title undefined
* msg_class undefined
* msg undefined
* global _create_page = <function _create_page>
* request = <MoinMoin.request.request_modpython.Request object>
3.
/usr/local/www/moin/moin/MoinMoin/action/userprefs.py in _create_page (request=<MoinMoin.request.request_modpython.Request object>, cancel=False)
1. 65
2. 66 if 'handler' in request.form:
3. 67 msg_class, msg = _handle_submission(request)
4. 68 else:
5. 69 msg_class, msg = None, None
* msg_class undefined
* msg undefined
* global _handle_submission = <function _handle_submission>
* request = <MoinMoin.request.request_modpython.Request object>
4.
/usr/local/www/moin/moin/MoinMoin/action/userprefs.py in _handle_submission (request=<MoinMoin.request.request_modpython.Request object>)
1. 32 if not obj.allowed():
2. 33 return None, None
3. 34 res = obj.handle_form()
4. 35 if isinstance(res, tuple):
5. 36 return res
* res undefined
* obj = <MoinMoin.userprefs.prefs.Settings object>
* obj.handle_form = <bound method Settings.handle_form of <MoinMoin.userprefs.prefs.Settings object>>
5.
/usr/local/www/moin/moin/MoinMoin/userprefs/prefs.py in handle_form (self=<MoinMoin.userprefs.prefs.Settings object>)
1. 236
2. 237 if form.has_key('save'): # Save user profile
3. 238 return self._save_user_prefs()
4. 239
5. 240 # form generation part
* self = <MoinMoin.userprefs.prefs.Settings object>
* self._save_user_prefs = <bound method Settings._save_user_prefs of <MoinMoin.userprefs.prefs.Settings object>>
6.
/usr/local/www/moin/moin/MoinMoin/userprefs/prefs.py in _save_user_prefs (self=<MoinMoin.userprefs.prefs.Settings object>)
1. 135
2. 136 # try to get the editor
3. 137 request.user.editor_default = wikiutil.clean_input(form.get('editor_default', [self.cfg.editor_default])[0])
4. 138 request.user.editor_ui = wikiutil.clean_input(form.get('editor_ui', [self.cfg.editor_ui])[0])
5. 139
* request = <MoinMoin.request.request_modpython.Request object>
* request.user = <MoinMoin.user.User at 0x9097d4c name:u'Jiro MATSUZAWA' valid:1>
* request.user.editor_default = u'text'
* global wikiutil = <module 'MoinMoin.wikiutil' from '/usr/local/www/moin/moin/MoinMoin/wikiutil.pyc'>
* wikiutil.clean_input = <function clean_input>
* form = {'action': [u'userprefs', u'userprefs'], 'aliasname': [u''], 'css_url': [u''], 'datetime_fmt': [u''], 'edit_rows': [u'20'], 'email': [u'matsuzawa.jr@gmail.com'], 'handler': [u'prefs', u'prefs'], 'jid': [u''], 'language': [u''], 'name': [u'Jiro MATSUZAWA'], ...}
* form.get = <built-in method get of dict object>
* self = <MoinMoin.userprefs.prefs.Settings object>
* self.cfg = <wikiconfig.Config object>
* self.cfg.editor_default = 'text'
7.
/usr/local/www/moin/moin-1.8.7/MoinMoin/wikiutil.py in clean_input (text='text', max_len=201)
1. 268 return u''
2. 269 else:
3. 270 return text.translate(config.clean_input_translation_map)
4. 271
5. 272
* text = 'text'
* text.translate = <built-in method translate of str object>
* global config = <module 'MoinMoin.config' from '/usr/local/www/moin/moin/MoinMoin/config/__init__.pyc'>
* config.clean_input_translation_map = {0: None, 1: None, 2: None, 3: None, 4: None, 5: None, 6: None, 7: None, 8: None, 9: u' ', ...}
TypeError
expected a character buffer object
* args = ('expected a character buffer object',)MoinMoin Version |
1.8.7 |
OS and Version |
Linux label.gnome.org 2.6.18-194.el5PAE #1 SMP Tue Mar 16 22:00:21 EDT 2010 i686 |
Python Version |
2.4.3 (/usr/bin/python) |
Server Setup |
modpython (from the bugreport) |
Server Details |
|
Language you are using the wiki in (set in the browser/UserPreferences) |
English |
Workaround
Discussion
Plan
- Priority:
- Assigned to:
Status: Fixed by http://hg.moinmo.in/moin/1.8/rev/1f638ed400a0
