Index: /FCKeditor/trunk/_whatsnew.html
===================================================================
--- /FCKeditor/trunk/_whatsnew.html	(revision 2107)
+++ /FCKeditor/trunk/_whatsnew.html	(revision 2108)
@@ -75,4 +75,6 @@
 			key will now have the default browser behavior if TabSpaces=0. It will move the
 			focus out of the editor (expect on Safari).</li>
+		<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2296">#2296</a>] Fixed permission denied error
+			on clicking on files in the file browser.</li>
 	</ul>
 	<p>
Index: /FCKeditor/trunk/editor/filemanager/browser/default/browser.html
===================================================================
--- /FCKeditor/trunk/editor/filemanager/browser/default/browser.html	(revision 2107)
+++ /FCKeditor/trunk/editor/filemanager/browser/default/browser.html	(revision 2108)
@@ -44,7 +44,5 @@
 		}
 		catch( e )
-		{
-			break ;
-		}
+		{}
 
 		// Remove a domain part: www.mytest.example.com => mytest.example.com => example.com ...
Index: /FCKeditor/trunk/editor/filemanager/browser/default/frmactualfolder.html
===================================================================
--- /FCKeditor/trunk/editor/filemanager/browser/default/frmactualfolder.html	(revision 2107)
+++ /FCKeditor/trunk/editor/filemanager/browser/default/frmactualfolder.html	(revision 2108)
@@ -42,7 +42,5 @@
 		}
 		catch( e )
-		{
-			break ;
-		}
+		{}
 
 		// Remove a domain part: www.mytest.example.com => mytest.example.com => example.com ...
Index: /FCKeditor/trunk/editor/filemanager/browser/default/js/common.js
===================================================================
--- /FCKeditor/trunk/editor/filemanager/browser/default/js/common.js	(revision 2107)
+++ /FCKeditor/trunk/editor/filemanager/browser/default/js/common.js	(revision 2108)
@@ -37,7 +37,5 @@
 		}
 		catch( e )
-		{
-			break ;
-		}
+		{}
 
 		// Remove a domain part: www.mytest.example.com => mytest.example.com => example.com ...
Index: /FCKeditor/trunk/editor/filemanager/browser/default/js/fckxml.js
===================================================================
--- /FCKeditor/trunk/editor/filemanager/browser/default/js/fckxml.js	(revision 2107)
+++ /FCKeditor/trunk/editor/filemanager/browser/default/js/fckxml.js	(revision 2108)
@@ -62,5 +62,23 @@
 			if ( oXmlHttp.readyState == 4 )
 			{
-				if ( ( oXmlHttp.status != 200 && oXmlHttp.status != 304 ) || oXmlHttp.responseXML == null || oXmlHttp.responseXML.firstChild == null )
+				var oXml ;
+				try
+				{
+					// this is the same test for an FF2 bug as in fckxml_gecko.js
+					// but we've moved the responseXML assignment into the try{}
+					// so we don't even have to check the return status codes.
+					var test = oXmlHttp.responseXML.firstChild ;
+					oXml = oXmlHttp.responseXML ;
+				}
+				catch ( e )
+				{
+					try
+					{
+						oXml = (new DOMParser()).parseFromString( oXmlHttp.responseText, 'text/xml' ) ;
+					}
+					catch ( e ) {}
+				}
+
+				if ( !oXml || !oXml.firstChild || oXml.firstChild.nodeName == 'parsererror' )
 				{
 					alert( 'The server didn\'t send back a proper XML response. Please contact your system administrator.\n\n' +
@@ -71,5 +89,5 @@
 				}
 
-				oFCKXml.DOMDocument = oXmlHttp.responseXML ;
+				oFCKXml.DOMDocument = oXml ;
 				asyncFunctionPointer( oFCKXml ) ;
 			}
