Index: /CKEditor/trunk/CHANGES.html
===================================================================
--- /CKEditor/trunk/CHANGES.html	(revision 4210)
+++ /CKEditor/trunk/CHANGES.html	(revision 4211)
@@ -67,4 +67,5 @@
 		<li><a href="http://dev.fckeditor.net/ticket/4368">#4368</a> : borderColor table cell attribute haven't worked for none-IE</li>
 		<li><a href="http://dev.fckeditor.net/ticket/4203">#4203</a> : In IE quirksmode + toolbar collapsed + source mode editing block height was incorrect.</li>
+		<li><a href="http://dev.fckeditor.net/ticket/4387">#4387</a> : Right clicking in Kama skin can lead to a javascript error.</li>
 	</ul>
 	<h3>
Index: /CKEditor/trunk/_source/skins/kama/skin.js
===================================================================
--- /CKEditor/trunk/_source/skins/kama/skin.js	(revision 4210)
+++ /CKEditor/trunk/_source/skins/kama/skin.js	(revision 4211)
@@ -86,6 +86,6 @@
 			{
 				uiColorMenuCss = uiColorMenuCss.split( '}' ).slice( 0, -1 );
-				for ( var i in uiColorMenuCss )
-						uiColorMenuCss[ i ] = uiColorMenuCss[ i ].split( '{' );
+				for ( var i = 0 ; i < uiColorMenuCss.length ; i++ ) 
+					uiColorMenuCss[ i ] = uiColorMenuCss[ i ].split( '{' );
 			}
 
@@ -101,16 +101,17 @@
 			function updateStylesheets( styleNodes, styleContent, replace )
 			{
-				for ( var id in styleNodes )
+				var r, i, content;
+				for ( var id  = 0 ; id < styleNodes.length ; id++ )
 				{
 					if ( CKEDITOR.env.webkit )
 					{
 						// Truncate manually.
-						for ( var i = 0 ; i < styleNodes[ id ].$.sheet.rules.length ; i++ )
+						for ( i = 0 ; i < styleNodes[ id ].$.sheet.rules.length ; i++ )
 							styleNodes[ id ].$.sheet.removeRule( i );
 
-						for ( var i in styleContent )
+						for ( i = 0 ; i < styleContent.length ; i++ )
 						{
-							var content = styleContent[ i ][ 1 ];
-							for ( var r in replace )
+							content = styleContent[ i ][ 1 ];
+							for ( r  = 0 ; r < replace.length ; r++ )
 								content = content.replace( replace[ r ][ 0 ], replace[ r ][ 1 ] );
 
@@ -120,6 +121,6 @@
 					else
 					{
-						var content = styleContent;
-						for ( var r in replace )
+						content = styleContent;
+						for ( r  = 0 ; r < replace.length ; r++ )
 							content = content.replace( replace[ r ][ 0 ], replace[ r ][ 1 ] );
 
