Re: [PHP-DEV] RM decision on BUG #55801 / FR #36424

2011-10-18 Thread Michael Wallner
On Sat, 15 Oct 2011 17:06:19 -0700, Stas Malyshev wrote:

 Hi!
 
 So, what is the status of this? I think we better revert it for 5.4 and
 look for solution that does not mess up existing code.

Hi there!

Yes, I received your mails, sorry for being quiet!

I cooked up a patch which uses clean var_hashs or (un)serialize 
within __wakeup and __sleep.

Tests pass, my test case in the bug produces a stack overflow,
which is IMO expected.  I'm just waiting for feedback of the
bug reporter.

Thanks,
Mike



-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP-DEV] RM decision on BUG #55801 / FR #36424

2011-10-17 Thread David Soria Parra
On 2011-10-16, Stas Malyshev smalys...@sugarcrm.com wrote:
 Hi!

 On 10/7/11 2:11 AM, Michael Wallner wrote:
 So I can only see two solutions:
   - either disallow serialize/unserialize in __sleep/__wakeup
   - or revert r299770

 So, what is the status of this? I think we better revert it for 5.4 and 
 look for solution that does not mess up existing code.
I wrote Michael, that I think we should revert this.

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP-DEV] RM decision on BUG #55801 / FR #36424

2011-10-15 Thread Stas Malyshev

Hi!

On 10/7/11 2:11 AM, Michael Wallner wrote:

So I can only see two solutions:
  - either disallow serialize/unserialize in __sleep/__wakeup
  - or revert r299770


So, what is the status of this? I think we better revert it for 5.4 and 
look for solution that does not mess up existing code.

--
Stanislav Malyshev, Software Architect
SugarCRM: http://www.sugarcrm.com/
(408)454-6900 ext. 227

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP-DEV] RM decision on BUG #55801 / FR #36424

2011-10-07 Thread Michael Wallner
Hi Stas,

On Thu, 06 Oct 2011 17:26:49 +0200, Stas Malyshev wrote:

 Could you give a quick summary of what the decision point is just so I
 won't miss anything scanning through the discussion and these bugs?

In r299770 [1] I introduced a global var_hash to serialize() so that
recursive calls to serialize()/unserialize() can know about the same
objects/variable references.

This was IMO a good thing to do (tm), but it obviously broke 
serializ behaviour when called in __sleep/__wakeup, because of 
the order of calls:

serialize(obj)  
 - obj-__sleep does serialize() (in user code)
 - then internally serialize(obj-prop) happens
 
unserialize(obj)
 - internally unserialize(obj-prop) is done
 - obj-__wakeup is called which does unserialize() (user code)

As one can see the IDs of the referenced objects when unserializing 
cannot match 
the IDs at serialization time, because of the mixed up call order.


So I can only see two solutions:
 - either disallow serialize/unserialize in __sleep/__wakeup 
 - or revert r299770


... unless someone else has a better idea.
 
 
[1] http://svn.php.net/viewvc/?view=revisionrevision=299770


Mike


-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP-DEV] RM decision on BUG #55801 / FR #36424

2011-10-06 Thread Stas Malyshev

Hi!

On 10/4/11 6:12 PM, Michael Wallner wrote:

Hi, could the release manager(s) please take a
decision on mentioned bug/feature request?


Could you give a quick summary of what the decision point is just so I 
won't miss anything scanning through the discussion and these bugs?


--
Stanislav Malyshev, Software Architect
SugarCRM: http://www.sugarcrm.com/
(408)454-6900 ext. 227

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP-DEV] RM decision on BUG #55801 / FR #36424

2011-10-04 Thread Michael Wallner
Hi, could the release manager(s) please take a 
decision on mentioned bug/feature request?

Thanks a lot,
Mike

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php