[patch] [file data] patch for custom fields with name file_list
diff --git a/patches/april_2013/p05_update_file_data.py b/patches/april_2013/p05_update_file_data.py
index 986e5b9..1ff48fa 100644
--- a/patches/april_2013/p05_update_file_data.py
+++ b/patches/april_2013/p05_update_file_data.py
@@ -5,28 +5,36 @@
 	webnotes.reload_doc("core", "doctype", "file_data")
 	webnotes.reset_perms("File Data")
 	
-	singles = webnotes.conn.sql_list("""select name from tabDocType
-		where ifnull(issingle,0)=1""")
+	singles = get_single_doctypes()
+	
 	for doctype in webnotes.conn.sql_list("""select parent from tabDocField where 
 		fieldname='file_list' and fieldtype='Text'"""):
-		if doctype in singles:
-			doc = webnotes.doc(doctype, doctype)
-			if doc.file_list:
-				update_for_doc(doctype, doc)
-				webnotes.conn.set_value(doctype, None, "file_list", None)
-		else:
-			try:
-				for doc in webnotes.conn.sql("""select name, file_list from `tab%s` where 
-					ifnull(file_list, '')!=''""" % doctype, as_dict=True):
-					update_for_doc(doctype, doc)
-				webnotes.conn.commit()
-				webnotes.conn.sql("""alter table `tab%s` drop column file_list""" % doctype)
-			except Exception, e:
-				if e.args[0]!=1054: raise e
+		update_file_list(doctype, singles)
 		
 		webnotes.conn.sql("""delete from tabDocField where fieldname='file_list'
 				and parent=%s""", doctype)
+		
 		# export_to_files([["DocType", doctype]])
+		
+def get_single_doctypes():
+	return webnotes.conn.sql_list("""select name from tabDocType
+			where ifnull(issingle,0)=1""")
+		
+def update_file_list(doctype, singles):
+	if doctype in singles:
+		doc = webnotes.doc(doctype, doctype)
+		if doc.file_list:
+			update_for_doc(doctype, doc)
+			webnotes.conn.set_value(doctype, None, "file_list", None)
+	else:
+		try:
+			for doc in webnotes.conn.sql("""select name, file_list from `tab%s` where 
+				ifnull(file_list, '')!=''""" % doctype, as_dict=True):
+				update_for_doc(doctype, doc)
+			webnotes.conn.commit()
+			webnotes.conn.sql("""alter table `tab%s` drop column file_list""" % doctype)
+		except Exception, e:
+			if e.args[0]!=1054: raise e
 
 def update_for_doc(doctype, doc):
 	for filedata in doc.file_list.split("\n"):
diff --git a/patches/patch_list.py b/patches/patch_list.py
index a6dd0a2..096fec80 100644
--- a/patches/patch_list.py
+++ b/patches/patch_list.py
@@ -247,4 +247,5 @@
     "execute:webnotes.reload_doc('Stock', 'DocType', 'Delivery Note Item')",
 	"patches.april_2013.p06_default_cost_center",
 	"execute:webnotes.reset_perms('File Data')",
+	"patches.april_2013.p07_update_file_data_custom_field",
 ]
\ No newline at end of file