Index: _source/plugins/list/plugin.js
===================================================================
--- _source/plugins/list/plugin.js	(revision 6348)
+++ _source/plugins/list/plugin.js	(revision )
@@ -102,7 +102,10 @@
 				}
 				else if ( item.indent == Math.max( indentLevel, 0 ) + 1 )
 				{
-					var listData = CKEDITOR.plugins.list.arrayToList( listArray, null, currentIndex, paragraphMode );
+					// Maintain list root direction (#6861).
+					var rootNodeDir = rootNode.getDirection( 1 ),
+						listData = CKEDITOR.plugins.list.arrayToList( listArray, null, currentIndex, paragraphMode,
+						currentListItem.getDirection( 1 ) != rootNodeDir ? rootNodeDir: null );
 
 					// If the next block is an <li> with another list tree as the first
 					// child, we'll need to append a filler (<br>/NBSP) or the list item
