realbasic-plugins
[Top] [All Lists]

Re: Does REALUnlockObject work on a REALobjectArray?

To: REALbasic Plugins <realbasic-plugins at lists dot realsoftware dot com>
Subject: Re: Does REALUnlockObject work on a REALobjectArray?
From: Alfred Van Hoek <vanhoek at mac dot com>
Date: Sat, 28 Jan 2006 12:23:32 -0500
Delivered-to: realbasic-plugins at lists dot realsoftware dot com
References: <ea5840a251d79cca2705b7f4ac966092 at mac dot com> <849E1004-16A9-4F68-BA8E-564AB66858CD at realsoftware dot com>

On Jan 28, 2006, at 12:33 AM, Mars Saxman wrote:

On Jan 27, 2006, at 8:11 PM, Alfred Van Hoek wrote:

Since we can create a REALobjectArray in plugin code as it does seem, we ought to unlock it too, and I assume the object array can be typecasted to a REALobject followed by a successful call to REALUnlockObject?

No, that will not work. An array is not a REALobject.

k,

Issue 1:
I wish there was a REALUnlockObjectArray then. The items in the REALobjectArray appear not to be locked, which is cool because we don't need to implement a routine to unlock our items, nor would a future REALUnlockObjectArray require the unlocking of such array items.

Issue 2:
Oh, and btw, calling DebugDumpObjects for the OSX only/ Mach-O app does not generate a dumpfile. You need to switch to a PEF binary debug app. This is a bug.

Issue 3:
Further, since you have implemented Dictionary.Values, which we use to create a REALobjectArray by Dynamic Access, the RBRuntime should have a REALUnlockObjectArray entry point already, isn't it?

Issue 4:
Our plugin can successfully expose a REALobjectArray as a byref argument, but how would the declaration be as a function result?
Examples:

// this one RB understands
{ (REALproc) MyVariants_ByRefArray, (REALproc) 0, "Items(Byref vars() As MyVariant)" },

// this one RB does not understand
{ (REALproc) MyVariants_Array, (REALproc) 0, "ReturnItems As MyVariant()" },


Alfred

_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>

Search the archives of this list here:
<http://support.realsoftware.com/listarchives/lists.html>


<Prev in Thread] Current Thread [Next in Thread>