X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=debugger%2Fcommon.php;h=d6e43fe017eb236d26fe631513ca0f3300bd208b;hb=526b0d2257ba1faa0cfcbdb0515d4f395f22ce2c;hp=ea389a65aeee675be6ec2cb571395960aabb5f1c;hpb=83bdd39e6807587c07a979b8b7a008322f639710;p=plcapi.git diff --git a/debugger/common.php b/debugger/common.php index ea389a6..d6e43fe 100644 --- a/debugger/common.php +++ b/debugger/common.php @@ -1,17 +1,55 @@ $v) { + if (!in_array($k, $noUnset) && isset($GLOBALS[$k])) { + unset($GLOBALS[$k]); + } + } + } + unregister_globals(); +} + // work around magic quotes -if (get_magic_quotes_gpc()) { +if (function_exists('get_magic_quotes_gpc') && get_magic_quotes_gpc()) { function stripslashes_deep($value) { $value = is_array($value) ? @@ -28,15 +66,17 @@ $preferredEncodings = 'UTF-8, ASCII, ISO-8859-1, UTF-7, EUC-JP, SJIS, eucJP-win, $inputcharset = mb_detect_encoding(urldecode($_SERVER['REQUEST_URI']), $preferredEncodings); if (isset($_GET['usepost']) && $_GET['usepost'] === 'true') { $_GET = $_POST; - /// @bug this is not a perfect detection method - it will fail if eg. a latin1 character is in the method name - $inputcharset = mb_detect_encoding(urldecode(isset($_GET['methodpayload'])) ? $_GET['methodpayload'] : '', $preferredEncodings); + $inputcharset = mb_detect_encoding(implode('', $_GET), $preferredEncodings); } +/// @todo if $inputcharset is not UTF8, we should probably re-encode $_GET to make it UTF-8 + // recover input parameters +/// @todo instead of using globals, move them to an array. Also: use a class for this parsing... $debug = false; $protocol = 0; $run = false; -$wstype = 0; +$wstype = defined('DEFAULT_WSTYPE') ? DEFAULT_WSTYPE : 0; $id = ''; if (isset($_GET['action'])) { if (isset($_GET['wstype']) && $_GET['wstype'] == '1') {