<pq>
daniels, thanks a lor for looking at the CM&HDR MRs that are currently open. Should I take it that if Vitaly is happy, I could just merge at least two of the three?
vmeson has joined #wayland
<daniels>
pq: sounds good :)
<pq>
cool
<pq>
swick, actually it's quite hard for me to decide if and where to put your copyrights, the code has evolved so much in the three open MRs.
<pq>
swick, what I want most is that you are happy with your attributions there. Which current is a co-authored-by in one commit: "libweston: introduce CMS component architecture"
<pq>
swick, would you like to have something added or are they fine as is?
rgallaispou has joined #wayland
<emersion>
pq, it doesn't seem like the wl_shm_buffer trick you described a while ago is reliable
<emersion>
wl_shm_buffer will destroy itself when the wl_resource is
<emersion>
if you want to ref the shm pool when the wl_resource is destroyed, then it's possible that the wl_shm_buffer has been destroyed alreadcy
<emersion>
since the order in which listeners are run is undefined
<pq>
hmm?
<emersion>
we talked a while ago about being able to access a wl_buffer backing storage after the client has destroyed it
<pq>
I thought I checked that the wl_shm_buffer is destroyed in the explicit desctructor callback, which guarantees it runs after the destroy_signal
<emersion>
ah, i'll check
<pq>
it still looks this way, so how do you see a problem?
<emersion>
okay, my mistake then
<pq>
wayland-shm.c:destroy_buffer() unrefs the pool
<pq>
...if the pool exists, hmm
<emersion>
hm, it doesn't seem like the pool is ref'd in shm_pool_create_buffer?
<pq>
a very good observation
<pq>
ManMower, how did this work again? :-D
<emersion>
and there's no assert(nrefs >= 0)
<pq>
oooh
<emersion>
and the check to decide not to destroy the pool is if (nrefs)
<emersion>
so nrefs == -1 will not result in crashes
<pq>
there is: pool->internal_refcount++;
<emersion>
oh.
<emersion>
that makes much more sense
<pq>
I got a little confused by "where is shm_pool_ref()?" too
<pq>
there exists only shm_pool_unref()
<emersion>
yea
neonking has joined #wayland
neonking has quit []
bl4ckb0ne has quit [Remote host closed the connection]
emersion has quit [Remote host closed the connection]
emersion has joined #wayland
bl4ckb0ne has joined #wayland
neonking has joined #wayland
shankaru has joined #wayland
ppascher has quit [Ping timeout: 480 seconds]
ppascher has joined #wayland
spstarr has joined #wayland
pounce has quit [Ping timeout: 480 seconds]
denis has joined #wayland
<bl4ckb0ne>
what does `Note: This leaves other in an invalid state.` means in the wl_list api
<bl4ckb0ne>
as in not empty but not usable?
<jadahl>
as in, could cause bones to break or limbs to fall off if you do anything to it other than wl_init()
<bl4ckb0ne>
that explains why i got stuck at wl_list_lenght