[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: (ITS#5340) REP_ENTRY_MODIFIABLE bug in dynlist

I wrote:
> Otherwise it should use rs_ensure_entry_modifiable().  Currently
> it's still wrong:  Discards the old entry without obeying sr_flags.

Unless dynlist_sc_save_entry() handles it, I haven't yet tried to figure
out the state when it is called. But it looks wrong: it saves and clears
rs->sr_entry without saving/clearing (rs->sr_flags & REP_ENTRY_MASK).

Here is a draft for what rs_ensure_entry_modifiable() usage is supposed
to look like, though I haven't tested it well and I'm going home now.
I'm unsure of the translucent code.  rwm looks a bit weird, but that's
mostly to assert that some functions that receive rs won't modify it.
I haven't touched dynlist, don't know what entry ownership is there.