diff --git a/product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_editRelation.xml b/product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_editRelation.xml
index 049f0a9d13f3a9b4bce28e5e9fc4a52649ffcb34..c60b61bfa4e4d282ad342bb7f789ee0ef491b25c 100644
--- a/product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_editRelation.xml
+++ b/product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_editRelation.xml
@@ -70,6 +70,10 @@ if listbox_uid is not None:\n
   uids = selection_tool.getSelectionCheckedUidsFor(selection_name)\n
 \n
 old_request = dict(saved_form_data)\n
+for k, v in old_request.items():\n
+  if isinstance(v, str):\n
+    old_request[k] = v.decode(\'base64\')\n
+\n
 \n
 field = getattr(context, form_id).get_field(field_id)\n
 field_key = field.generate_field_key()\n
@@ -154,19 +158,21 @@ return edit_method(form_id,\n
                             <string>selected_uids</string>
                             <string>dict</string>
                             <string>old_request</string>
+                            <string>_getiter_</string>
+                            <string>k</string>
+                            <string>v</string>
+                            <string>isinstance</string>
+                            <string>str</string>
+                            <string>_write_</string>
                             <string>getattr</string>
                             <string>field</string>
                             <string>field_key</string>
                             <string>len</string>
                             <string>_getitem_</string>
                             <string>sub_field_key</string>
-                            <string>str</string>
-                            <string>_write_</string>
                             <string>container</string>
                             <string>request</string>
                             <string>request_form</string>
-                            <string>_getiter_</string>
-                            <string>k</string>
                             <string>edit_method</string>
                             <string>True</string>
                           </tuple>
diff --git a/product/ERP5/bootstrap/erp5_core/bt/revision b/product/ERP5/bootstrap/erp5_core/bt/revision
index 98be9308d1a8d9c913d60ee6f2aa821c727c0a8b..8978c61ab0abff86e0129b07fcc38a214e966f65 100644
--- a/product/ERP5/bootstrap/erp5_core/bt/revision
+++ b/product/ERP5/bootstrap/erp5_core/bt/revision
@@ -1 +1 @@
-1517
\ No newline at end of file
+1518
\ No newline at end of file
diff --git a/product/ERP5Form/Tool/SelectionTool.py b/product/ERP5Form/Tool/SelectionTool.py
index b9784a27350ca031e9f254e18cb46fefdb710621..29f33df3d3c67b799275a61c48a8d289cc70a4b4 100644
--- a/product/ERP5Form/Tool/SelectionTool.py
+++ b/product/ERP5Form/Tool/SelectionTool.py
@@ -1207,7 +1207,9 @@ class SelectionTool( BaseTool, UniqueObject, SimpleItem ):
         saved_form_data = {}
         for key, value in REQUEST.form.items():
           if not isinstance(value, FileUpload):
-              saved_form_data[key] = value
+            if isinstance(value, basestring):
+              value = value.encode('base64')
+            saved_form_data[key] = value
 
         base_category = None
         kw = {}