marshal return types, add CharSet.Unicode to functions that lack it, marshal BOOL parameters

This commit is contained in:
David Bremner 2016-04-16 18:28:44 -07:00
commit d780d337e4
7 changed files with 18 additions and 10 deletions

View file

@ -62,6 +62,7 @@ namespace GreenshotPlugin.UnmanagedHelpers {
/// </summary>
public abstract class SafeObjectHandle : SafeHandleZeroOrMinusOneIsInvalid {
[DllImport("gdi32", SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
private static extern bool DeleteObject(IntPtr hObject);
protected SafeObjectHandle(bool ownsHandle) : base(ownsHandle) {
@ -149,7 +150,8 @@ namespace GreenshotPlugin.UnmanagedHelpers {
/// </summary>
public class SafeCompatibleDCHandle : SafeDCHandle {
[DllImport("gdi32", SetLastError = true)]
private static extern bool DeleteDC(IntPtr hDC);
[return: MarshalAs(UnmanagedType.Bool)]
private static extern bool DeleteDC(IntPtr hDC);
[SecurityCritical]
private SafeCompatibleDCHandle() : base(true) {