diff options
author | Sebastian Dröge <sebastian.droege@collabora.co.uk> | 2009-06-03 21:10:57 +0200 |
---|---|---|
committer | Sebastian Dröge <sebastian.droege@collabora.co.uk> | 2009-06-03 21:10:57 +0200 |
commit | 6ab410403c92cdace4d88d82d0404d2951440eb4 (patch) | |
tree | 93ac83af49102abc032a0913d060d235de2cdd9b /generator | |
parent | aba607129cc30f66d946109c50522674b1663af9 (diff) |
Fix marshalling of null terminated string arrays as return values
Diffstat (limited to 'generator')
-rw-r--r-- | generator/ReturnValue.cs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/generator/ReturnValue.cs b/generator/ReturnValue.cs index 999f958..06d8a06 100644 --- a/generator/ReturnValue.cs +++ b/generator/ReturnValue.cs @@ -110,7 +110,9 @@ namespace GtkSharp.Generation { get {
if (IGen == null)
return String.Empty;
- return IGen.ToNativeReturnType + (is_array || is_null_term ? "[]" : String.Empty);
+ else if (is_null_term)
+ return "IntPtr";
+ return IGen.ToNativeReturnType + (is_array ? "[]" : String.Empty);
}
}
@@ -128,7 +130,7 @@ namespace GtkSharp.Generation { } else if (IGen is HandleBase)
return ((HandleBase)IGen).FromNative (var, owned);
else if (is_null_term)
- return String.Format ("GLib.Marshaller.NullTermPtrToStringArray ({0}, {1})", var, owned ? "true" : "false");
+ return String.Format ("Gst.Marshaller.NullTermPtrToStringArray ({0}, {1})", var, owned ? "true" : "false");
else
return IGen.FromNativeReturn (var);
}
@@ -142,7 +144,7 @@ namespace GtkSharp.Generation { string args = ", typeof (" + ElementType + "), " + (owned ? "true" : "false") + ", " + (elements_owned ? "true" : "false");
var = "new " + IGen.QualifiedName + "(" + var + args + ")";
} else if (is_null_term)
- return String.Format ("GLib.Marshaller.StringArrayToNullTermPointer ({0})", var);
+ return String.Format ("Gst.Marshaller.StringArrayToNullTermPointer ({0})", var);
if (IGen is IManualMarshaler)
return (IGen as IManualMarshaler).AllocNative (var);
|