[wp-trac] Re: [WordPress Trac] #5581: some diff which needs to be
incorporated into wporg
WordPress Trac
wp-trac at lists.automattic.com
Fri Jan 4 19:17:42 GMT 2008
#5581: some diff which needs to be incorporated into wporg
---------------------+------------------------------------------------------
Reporter: hailin | Owner: anonymous
Type: defect | Status: new
Priority: normal | Milestone: 2.5
Component: General | Version:
Severity: normal | Resolution:
Keywords: |
---------------------+------------------------------------------------------
Old description:
> I discovered this inconsistency, partly due to merge, between wporg and
> wpcom, and believe they should be incorporated into wporg.
>
> In function display_element in Walk class.
> i should be set to –1 in after the recursive call returns.
>
> Consider the following example:
> E1
> - e2
> - - e3
> - - - e4
>
> And suppose children has order: e3, e2, e4 in the children array.
>
> First we call display_element(E1), it will traverse children array, and
> find e2 as E1’s child; and the resulting array becomes e3, e4.
>
> On the next recursive call, we are trying to find the child of e2 from
> the remaining children array.
>
> Yet, with i--, it will start with e4, missing e3.
>
> So this is a tricky case that is a little hard to imagine.
> However, we already saw this happening with very complicated page
> hierarchy in wpcom.
>
> Therefore, we have to reset index i to –1 so that on next call, it begins
> with index 0.
>
> The catch and repair bad page diff is self-explanatory.
New description:
I discovered this inconsistency, partly due to merge, between wporg and
wpcom, and believe they should be incorporated into wporg.
In function display_element in Walk class. [[br]]
i should be set to –1 in after the recursive call returns.
Consider the following example: [[br]]
E1 [[br]]
- e2 [[br]]
- - e3 [[br]]
- - - e4
And suppose children has order: e3, e2, e4 in the children array.
First we call display_element(E1), it will traverse children array, and
find e2 as E1’s child; and the resulting array becomes e3, e4.
On the next recursive call, we are trying to find the child of e2 from the
remaining children array.
Yet, with i--, it will start with e4, missing e3.
So this is a tricky case that is a little hard to imagine.
However, we already saw this happening with very complicated page
hierarchy in wpcom.
Therefore, we have to reset index i to –1 so that on next call, it begins
with index 0.
The catch and repair bad page diff is self-explanatory.
--
Ticket URL: <http://trac.wordpress.org/ticket/5581#comment:1>
WordPress Trac <http://trac.wordpress.org/>
WordPress blogging software
More information about the wp-trac
mailing list