Changeset 23019


Ignore:
Timestamp:
2013/08/01 04:25:53 (11 years ago)
Author:
Seasoft
Message:

#1658 (SC_Query の各種メソッドでプレースホルダの数に誤りがあるとメモリリークが発生する)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_13-dev/data/class/SC_Query.php

    r22856 r23019  
    10291029    function execute(&$sth, $arrVal = array()) 
    10301030    { 
     1031        // #1658 (SC_Query の各種メソッドでプレースホルダの数に誤りがあるとメモリリークが発生する) 対応 
     1032        // TODO 現状は PEAR 内のバックトレースを抑制することで、メモリーリークの影響を小さくしている。 
     1033        //      根本的には、そのバックトレースが、どこに居座っているかを特定して、対策すべき。 
     1034        $pear_property =& PEAR5::getStaticProperty('PEAR_Error', 'skiptrace'); 
     1035        $bak = $pear_property; 
     1036        $pear_property = true; 
     1037 
    10311038        $arrStartInfo =& $this->lfStartDbTraceLog($sth, $arrVal); 
    10321039        $affected =& $sth->execute((array)$arrVal); 
    10331040        $this->lfEndDbTraceLog($arrStartInfo, $sth, $arrVal); 
     1041 
     1042        $pear_property = $bak; 
    10341043 
    10351044        if (PEAR::isError($affected)) { 
Note: See TracChangeset for help on using the changeset viewer.