efl-csharp: Use proper conversion functions.

Summary:
PtrToStringAuto may switch between ANSI and UTF16 encodings in a not so
clear way, leading to decoding errors when getting messages from DBus.

Reviewers: vitor.sousa

Reviewed By: vitor.sousa

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D8023
This commit is contained in:
Lauro Moura 2019-02-25 19:23:04 -03:00 committed by Vitor Sousa
parent 401f695644
commit 27c848c35a
5 changed files with 25 additions and 25 deletions

View File

@ -205,7 +205,7 @@ public class Connection : IDisposable
var ptr = eldbus_connection_unique_name_get(Handle); var ptr = eldbus_connection_unique_name_get(Handle);
if (ptr == IntPtr.Zero) if (ptr == IntPtr.Zero)
return null; return null;
return Marshal.PtrToStringAuto(ptr); return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
} }
public eldbus.Pending NameRequest(string bus, uint flags, eldbus.MessageDelegate dlgt = null) public eldbus.Pending NameRequest(string bus, uint flags, eldbus.MessageDelegate dlgt = null)

View File

@ -279,42 +279,42 @@ public class Message : IDisposable
{ {
CheckHandle(); CheckHandle();
var ptr = eldbus_message_path_get(Handle); var ptr = eldbus_message_path_get(Handle);
return Marshal.PtrToStringAuto(ptr); return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
} }
public string GetInterface() public string GetInterface()
{ {
CheckHandle(); CheckHandle();
var ptr = eldbus_message_interface_get(Handle); var ptr = eldbus_message_interface_get(Handle);
return Marshal.PtrToStringAuto(ptr); return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
} }
public string GetMember() public string GetMember()
{ {
CheckHandle(); CheckHandle();
var ptr = eldbus_message_member_get(Handle); var ptr = eldbus_message_member_get(Handle);
return Marshal.PtrToStringAuto(ptr); return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
} }
public string GetDestination() public string GetDestination()
{ {
CheckHandle(); CheckHandle();
var ptr = eldbus_message_destination_get(Handle); var ptr = eldbus_message_destination_get(Handle);
return Marshal.PtrToStringAuto(ptr); return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
} }
public string GetSender() public string GetSender()
{ {
CheckHandle(); CheckHandle();
var ptr = eldbus_message_sender_get(Handle); var ptr = eldbus_message_sender_get(Handle);
return Marshal.PtrToStringAuto(ptr); return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
} }
public string GetSignature() public string GetSignature()
{ {
CheckHandle(); CheckHandle();
var ptr = eldbus_message_signature_get(Handle); var ptr = eldbus_message_signature_get(Handle);
return Marshal.PtrToStringAuto(ptr); return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
} }
public eldbus.Message NewError(string error_name, string error_msg) public eldbus.Message NewError(string error_name, string error_msg)
@ -341,8 +341,8 @@ public class Message : IDisposable
IntPtr name_ptr; IntPtr name_ptr;
IntPtr text_ptr; IntPtr text_ptr;
bool r = eldbus_message_error_get(Handle, out name_ptr, out text_ptr); bool r = eldbus_message_error_get(Handle, out name_ptr, out text_ptr);
name = Marshal.PtrToStringAuto(name_ptr); name = Eina.StringConversion.NativeUtf8ToManagedString(name_ptr);
text = Marshal.PtrToStringAuto(text_ptr); text = Eina.StringConversion.NativeUtf8ToManagedString(text_ptr);
return r; return r;
} }
@ -408,7 +408,7 @@ public class Message : IDisposable
CheckHandle(); CheckHandle();
IntPtr aux; IntPtr aux;
var r = eldbus_message_arguments_get(Handle, Argument.StringType.Signature, out aux); var r = eldbus_message_arguments_get(Handle, Argument.StringType.Signature, out aux);
val = Marshal.PtrToStringAuto(aux); val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
return r; return r;
} }
@ -417,7 +417,7 @@ public class Message : IDisposable
CheckHandle(); CheckHandle();
IntPtr aux; IntPtr aux;
var r = eldbus_message_arguments_get(Handle, Argument.ObjectPathType.Signature, out aux); var r = eldbus_message_arguments_get(Handle, Argument.ObjectPathType.Signature, out aux);
val = Marshal.PtrToStringAuto(aux); val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
return r; return r;
} }
@ -426,7 +426,7 @@ public class Message : IDisposable
CheckHandle(); CheckHandle();
IntPtr aux; IntPtr aux;
var r = eldbus_message_arguments_get(Handle, Argument.SignatureType.Signature, out aux); var r = eldbus_message_arguments_get(Handle, Argument.SignatureType.Signature, out aux);
val = Marshal.PtrToStringAuto(aux); val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
return r; return r;
} }
@ -617,7 +617,7 @@ public class MessageIterator
CheckHandle(); CheckHandle();
IntPtr aux; IntPtr aux;
bool r = eldbus_message_iter_get_and_next(Handle, Argument.StringType.Code, out aux); bool r = eldbus_message_iter_get_and_next(Handle, Argument.StringType.Code, out aux);
val = Marshal.PtrToStringAuto(aux); val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
return r; return r;
} }
@ -626,7 +626,7 @@ public class MessageIterator
CheckHandle(); CheckHandle();
IntPtr aux; IntPtr aux;
bool r = eldbus_message_iter_get_and_next(Handle, Argument.ObjectPathType.Code, out aux); bool r = eldbus_message_iter_get_and_next(Handle, Argument.ObjectPathType.Code, out aux);
val = Marshal.PtrToStringAuto(aux); val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
return r; return r;
} }
@ -635,7 +635,7 @@ public class MessageIterator
CheckHandle(); CheckHandle();
IntPtr aux; IntPtr aux;
bool r = eldbus_message_iter_get_and_next(Handle, Argument.SignatureType.Code, out aux); bool r = eldbus_message_iter_get_and_next(Handle, Argument.SignatureType.Code, out aux);
val = Marshal.PtrToStringAuto(aux); val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
return r; return r;
} }
@ -732,7 +732,7 @@ public class MessageIterator
CheckHandle(); CheckHandle();
IntPtr aux; IntPtr aux;
eldbus_message_iter_basic_get(Handle, out aux); eldbus_message_iter_basic_get(Handle, out aux);
val = Marshal.PtrToStringAuto(aux); val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
} }
public void Get(out eldbus.ObjectPath val) public void Get(out eldbus.ObjectPath val)
@ -740,7 +740,7 @@ public class MessageIterator
CheckHandle(); CheckHandle();
IntPtr aux; IntPtr aux;
eldbus_message_iter_basic_get(Handle, out aux); eldbus_message_iter_basic_get(Handle, out aux);
val = Marshal.PtrToStringAuto(aux); val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
} }
public void Get(out eldbus.SignatureString val) public void Get(out eldbus.SignatureString val)
@ -748,7 +748,7 @@ public class MessageIterator
CheckHandle(); CheckHandle();
IntPtr aux; IntPtr aux;
eldbus_message_iter_basic_get(Handle, out aux); eldbus_message_iter_basic_get(Handle, out aux);
val = Marshal.PtrToStringAuto(aux); val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
} }
public void Get(out eldbus.UnixFd val) public void Get(out eldbus.UnixFd val)

View File

@ -175,14 +175,14 @@ public class Object : System.IDisposable
{ {
CheckHandle(); CheckHandle();
var ptr = eldbus_object_bus_name_get(Handle); var ptr = eldbus_object_bus_name_get(Handle);
return Marshal.PtrToStringAuto(ptr); return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
} }
public string GetPath() public string GetPath()
{ {
CheckHandle(); CheckHandle();
var ptr = eldbus_object_path_get(Handle); var ptr = eldbus_object_path_get(Handle);
return Marshal.PtrToStringAuto(ptr); return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
} }
public void Ref() public void Ref()

View File

@ -82,28 +82,28 @@ public class Pending
{ {
CheckHandle(); CheckHandle();
var ptr = eldbus_pending_destination_get(Handle); var ptr = eldbus_pending_destination_get(Handle);
return Marshal.PtrToStringAuto(ptr); return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
} }
public string GetPath() public string GetPath()
{ {
CheckHandle(); CheckHandle();
var ptr = eldbus_pending_path_get(Handle); var ptr = eldbus_pending_path_get(Handle);
return Marshal.PtrToStringAuto(ptr); return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
} }
public string GetInterface() public string GetInterface()
{ {
CheckHandle(); CheckHandle();
var ptr = eldbus_pending_interface_get(Handle); var ptr = eldbus_pending_interface_get(Handle);
return Marshal.PtrToStringAuto(ptr); return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
} }
public string GetMethod() public string GetMethod()
{ {
CheckHandle(); CheckHandle();
var ptr = eldbus_pending_method_get(Handle); var ptr = eldbus_pending_method_get(Handle);
return Marshal.PtrToStringAuto(ptr); return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
} }
} }

View File

@ -141,7 +141,7 @@ public class Proxy : IDisposable
{ {
CheckHandle(); CheckHandle();
var ptr = eldbus_proxy_interface_get(Handle); var ptr = eldbus_proxy_interface_get(Handle);
return Marshal.PtrToStringAuto(ptr); return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
} }
eldbus.Message NewMethodCall(string member) eldbus.Message NewMethodCall(string member)