Index: trunk/core/kernel/utility/debugger.php
===================================================================
diff -u -r961 -r1088
--- trunk/core/kernel/utility/debugger.php (.../debugger.php) (revision 961)
+++ trunk/core/kernel/utility/debugger.php (.../debugger.php) (revision 1088)
@@ -141,13 +141,15 @@
$argsID = 'trace_args_'.$dataIndex.'_'.$i;
if(isset($traceRec['file']))
{
- $ret .= 'Function: '.$this->getFileLink($traceRec['file'],$traceRec['line'],$traceRec['class'].$traceRec['type'].$traceRec['function']);
+ $func_name=isset($traceRec['class'])?$traceRec['class'].$traceRec['type'].$traceRec['function']:$traceRec['function'];
+ $ret .= 'Function: '.$this->getFileLink($traceRec['file'],$traceRec['line'],$func_name);
$ret .= ' in '.basename($traceRec['file']).' on line '.$traceRec['line'].'
';
}
else
{
$ret .= 'no file information available';
}
+
// ensure parameter value is not longer then 200 symbols
$this->processTraceArguments($traceRec['args']);
$args = $this->highlightString(print_r($traceRec['args'], true));
@@ -172,6 +174,7 @@
function processTraceArguments(&$traceArgs)
{
+ if(!$traceArgs) return '';
foreach ($traceArgs as $argID => $argValue)
{
if( is_array($argValue) || is_object($argValue) )
@@ -238,7 +241,16 @@
function getFileLink($file, $lineno = 1, $title = '')
{
if(!$title) $title = $file;
- return ''.$title.'';
+ $is_mozilla=strpos(strtolower($_SERVER['HTTP_USER_AGENT']),'firefox')!==false?true:false;
+ if($is_mozilla)
+ {
+ return ''.$title.'';
+ }
+ else
+ {
+ return ''.$title.'';
+ }
+
}
function getLocalFile($remoteFile)
@@ -545,37 +557,38 @@
$DebugLayer.style.top = parseInt(document.body.offsetTop + document.body.scrollTop) + $TopMargin;
$DebugLayer.style.height = document.body.clientHeight - $TopMargin - 5;
}
- window.parent.status = 'OFFSET: '+prepareSizes('offset')+' | SCROLL: '+prepareSizes('scroll')+' | CLIENT: '+prepareSizes('client');
- window.parent.status += 'DL Info: '+$DebugLayer.style.top+'; S.AH: '+screen.availHeight;
+ //window.parent.status = 'OFFSET: '+prepareSizes('offset')+' | SCROLL: '+prepareSizes('scroll')+' | CLIENT: '+prepareSizes('client');
+ //window.parent.status += 'DL Info: '+$DebugLayer.style.top+'; S.AH: '+screen.availHeight;
return true;
}
- function SetClipboard($data)
+ function SetClipboard(copyText)
{
- if (window.clipboardData)
- {
- window.clipboardData.setData('Text', $data);
+ if(window.clipboardData)
+ {
+ // IE send-to-clipboard method.
+ window.clipboardData.setData('Text', copyText);
}
else if (window.netscape)
{
- //netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
- var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
- if (!clip) return;
+ // You have to sign the code to enable this or allow the action in about:config by changing user_pref("signed.applets.codebase_principal_support", true);
+ netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
- var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
- if (!trans) return;
-
- trans.addDataFlavor('text/unicode');
- var str = new Object();
- var len = new Object();
+ // Store support string in an object.
var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
+ if (!str) return false;
+ str.data=copyText;
- var $copytext=$data;
+ // Make transferable.
+ var trans = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable);
+ if (!trans) return false;
- str.data=$copytext;
+ // Specify what datatypes we want to obtain, which is text in this case.
+ trans.addDataFlavor("text/unicode");
+ trans.setTransferData("text/unicode",str,copyText.length*2);
- trans.setTransferData("text/unicode",str,$copytext.length*2);
var clipid=Components.interfaces.nsIClipboard;
+ var clip = Components.classes["@mozilla.org/widget/clipboard;1"].getService(clipid);
if (!clip) return false;
clip.setData(trans,null,clipid.kGlobalClipboard);
@@ -639,7 +652,7 @@
$this->memoryUsage['debugger_finish']=memory_get_usage();
$this->memoryUsage['print_report']=$this->memoryUsage['debugger_finish']-$this->memoryUsage['debugger_start'];
$this->memoryUsage['total']=$this->memoryUsage['print_report']+$this->memoryUsage['error_handling'];
-
+ $this->memoryUsage['application']=memory_get_usage()-$this->memoryUsage['total'];
if($returnResult)
{
$ret = ob_get_contents();
@@ -664,7 +677,8 @@
{
$info=Array('printReport'=>'print_report',
'saveError'=>'error_handling',
- 'Total'=>'total');
+ 'Total'=>'total',
+ 'Application'=>'application');
$ret=Array();
foreach($info as $title => $value_key)
{
@@ -766,6 +780,11 @@
}
+ if( !function_exists('memory_get_usage') )
+ {
+ function memory_get_usage(){ return -1; }
+ }
+
function ConstOn($const_name)
{
return defined($const_name)&&constant($const_name);