[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kfm-devel
Subject:    Re: RFC --- new scripting extension sketches.
From:       "Maksim Orlovich" <mo85 () cornell ! edu>
Date:       2010-05-22 18:20:38
Message-ID: 64503.127.0.0.1.1274552438.squirrel () localhost
[Download RAW message or body]

> I am now working to get at least the window.location.href sequence
> working. Until now, the deserializing from a dbusvariant to an object
> fails.

I didn't provide marshallers for Object and FunctionRef due to the
pointers, as it's not clear what the right thing for them is.

> I can however get a QDBusArgument out of the variant and do a
> manual extraction.
> Also serializing Null and Undefined gives an error, Qt doesn't like
> the empty struct ("()" signature)

I'll add a dummy int there then.

Anyway, to clarify the refcounting protocol, since I think I know what you
want:

1) Return values (including from enclosingObject/rootObject) are always
ref'd by the producer
2) Arguments are to be guaranteed to live for the duration of the call,
and the callee only ref's if it retains them

Also, I should fix the following:
1) Dummy fields for Null/Undefined
2) Make KHTML (and ScriptableLiveConnectExtension) follow the refcount
protocol.
3) Fix KHTML's evaluate call to properly return values

Also, there is one more thing: IMHO the plugin should be required to
release all of its references when it's deleted (to break cycles). It
seems like that's doable for you, right?


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic