views:

30

answers:

1

I'm trying to pinvoke to a clutter function.

The function is defined in the docs as

ClutterActor * clutter_texture_new_from_file (const gchar *filename, GError **error);

The code I have is as follows:

[DllImport ("libclutter-glx-1.0.so.0")]
private static extern IntPtr clutter_texture_new_from_file (string filename, IntPtr errorData);

And I call it like this:

IntPtr texture = clutter_texture_new_from_file("myImage.jpeg",IntPtr.Zero);

however when called like this in monodevelop on ubuntu I get the following error.

Unix Transport Error

Eventally I would like to get the error reporting working so I can get the gerror result however firstly I need to get past the Unix Transport Error.

+1  A: 

The errorData parameter should be marked as "ref IntPtr", although I don't think that should be causing this error since that parameter should be allowed to be NULL. Otherwise, try running this outside Monodevelop. This kind of error may be the result of a segfault elsewhere in your program.

jianquin