Index: /CKEditor/trunk/CHANGES.html
===================================================================
--- /CKEditor/trunk/CHANGES.html	(revision 6814)
+++ /CKEditor/trunk/CHANGES.html	(revision 6815)
@@ -53,4 +53,5 @@
 		<li><a href="http://dev.ckeditor.com/ticket/7513">#7513</a> : Invalid markup could cause the editor to hang.</li>
 		<li><a href="http://dev.ckeditor.com/ticket/6109">#6109</a> : Paste and Paste as Plain Text dialog windows now use the standard <code><a href="http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.dialog.html#commitContent">commitContent</a></code> and <code><a href="http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.dialog.html#setupContent">setupContent</a></code> methods.</li>
+		<li><a href="http://dev.ckeditor.com/ticket/7588">#7588</a> : The editor code now has a protection system to avoid issues when including ckeditor.js more than once in the page.</li>
 	</ul>
 	<h3>
Index: /CKEditor/trunk/_source/core/ckeditor_base.js
===================================================================
--- /CKEditor/trunk/_source/core/ckeditor_base.js	(revision 6814)
+++ /CKEditor/trunk/_source/core/ckeditor_base.js	(revision 6815)
@@ -17,4 +17,13 @@
 // #### Raw code
 // ATTENTION: read the above "Compressed Code" notes when changing this code.
+
+/* @Packager.RemoveLine
+// Avoid having the editor code initialized twice. (#7588)
+// Use CKEDITOR.dom to check whether the full ckeditor.js code has been loaded
+// or just ckeditor_basic.js.
+// Remove these lines when compressing manually.
+if ( window.CKEDITOR && window.CKEDITOR.dom )
+	return;
+@Packager.RemoveLine */
 
 if ( !window.CKEDITOR )
