public function propFind( ezcWebdavPropFindRequest $request )
    {
        $ini = eZINI::instance( 'i18n.ini' );
        $dataCharset = $ini->variable( 'CharacterSettings', 'Charset' );
        $xmlCharset = 'utf-8';

        $this->acquireLock( true );
        $return = parent::propFind( $request );
        if ( isset( $return->responses ) && is_array( $return->responses ) )
        {
            foreach ( $return->responses as $response )
            {
                $href = $response->node->path;
                $pathArray = explode( '/', self::recode( $href, $dataCharset, $xmlCharset ) );
                $encodedPath = '/';

                foreach ( $pathArray as $pathElement )
                {
                    if ( $pathElement != '' )
                    {
                        $encodedPath .= rawurlencode( $pathElement );
                        $encodedPath .= '/';
                    }
                }
                $encodedPath = rtrim( $encodedPath, '/' );
                $response->node->path = $encodedPath;
            }
        }
        $this->freeLock();

        return $return;
    }