More fixes

This commit is contained in:
Yoshi Askharoun
2021-11-22 00:09:47 -06:00
parent b116caa78f
commit 896ab7828a
90 changed files with 1098 additions and 1074 deletions
-12
View File
@@ -1,12 +0,0 @@
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using Microsoft.VisualC;
[StructLayout(LayoutKind.Sequential, Size = 24)]
[NativeCppClass]
[DebugInfoInPDB]
[MiscellaneousBits(64)]
internal struct CComPropVariant
{
private long _003Calignment_0020member_003E;
}
@@ -42,14 +42,13 @@ internal class CComPtrMgd_003CEndpointHostManagerMediator_003E : IDisposable
}
finally
{
base.Finalize();
//base.Finalize();
}
}
public sealed override void Dispose()
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
~CComPtrMgd_003CEndpointHostManagerMediator_003E()
@@ -77,8 +76,8 @@ internal class CComPtrMgd_003CEndpointHostManagerMediator_003E : IDisposable
}
[return: MarshalAs(UnmanagedType.U1)]
public unsafe bool operator !()
public static unsafe bool operator !(CComPtrMgd_003CEndpointHostManagerMediator_003E obj)
{
return (long)(nint)p == 0;
return (long)(nint)obj.p == 0;
}
}
+3 -3
View File
@@ -46,7 +46,7 @@ internal class CComPtrMgd_003CIFirmwareUpdater_003E : IDisposable
}
}
public sealed override void Dispose()
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
@@ -99,7 +99,7 @@ internal class CComPtrMgd_003CIFirmwareUpdater_003E : IDisposable
return 0;
}
public unsafe int QueryInterface_003CIFirmwareUpdater2_003E(IFirmwareUpdater2** pp)
public unsafe int QueryInterfaceIFirmwareUpdater2(IFirmwareUpdater2** pp)
{
//IL_002e: Expected I, but got I8
IFirmwareUpdater* ptr = p;
@@ -108,6 +108,6 @@ internal class CComPtrMgd_003CIFirmwareUpdater_003E : IDisposable
Module._ZuneShipAssert(1001u, 186u);
return -2147467261;
}
return ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, _GUID*, void**, int>)(*(ulong*)(*(ulong*)ptr)))((nint)ptr, (_GUID*)Unsafe.AsPointer(ref Module._GUID_f066fc29_e525_4ddc_abe6_5213d22c14d2), (void**)pp);
return ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, _GUID*, void**, int>)(*(ulong*)(*(ulong*)ptr)))((nint)ptr, &Module.GUID_IFirmwareUpdater2, (void**)pp);
}
}
+4 -5
View File
@@ -49,9 +49,9 @@ internal class CComPtrMgd_003CIWinLiveSignup_003E : IDisposable
}
[return: MarshalAs(UnmanagedType.U1)]
public unsafe bool operator !()
public static unsafe bool operator !(CComPtrMgd_003CIWinLiveSignup_003E obj)
{
return (long)(nint)p == 0;
return (long)(nint)obj.p == 0;
}
protected virtual void Dispose([MarshalAs(UnmanagedType.U1)] bool P_0)
@@ -67,14 +67,13 @@ internal class CComPtrMgd_003CIWinLiveSignup_003E : IDisposable
}
finally
{
base.Finalize();
//base.Finalize();
}
}
public sealed override void Dispose()
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
~CComPtrMgd_003CIWinLiveSignup_003E()
+4 -5
View File
@@ -49,9 +49,9 @@ internal class CComPtrMgd_003CIWlanProvider_003E : IDisposable
}
[return: MarshalAs(UnmanagedType.U1)]
public unsafe bool operator !()
public static unsafe bool operator !(CComPtrMgd_003CIWlanProvider_003E obj)
{
return (long)(nint)p == 0;
return (long)(nint)obj.p == 0;
}
protected virtual void Dispose([MarshalAs(UnmanagedType.U1)] bool P_0)
@@ -67,14 +67,13 @@ internal class CComPtrMgd_003CIWlanProvider_003E : IDisposable
}
finally
{
base.Finalize();
//base.Finalize();
}
}
public sealed override void Dispose()
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
~CComPtrMgd_003CIWlanProvider_003E()
+6 -7
View File
@@ -43,14 +43,13 @@ internal class CComPtrMgd_003CMicrosoftZuneLibrary_003A_003AFirmwareUpdateMediat
}
finally
{
base.Finalize();
//base.Finalize();
}
}
public sealed override void Dispose()
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
~CComPtrMgd_003CMicrosoftZuneLibrary_003A_003AFirmwareUpdateMediator_003E()
@@ -58,9 +57,9 @@ internal class CComPtrMgd_003CMicrosoftZuneLibrary_003A_003AFirmwareUpdateMediat
Dispose(false);
}
public unsafe implicit operator FirmwareUpdateMediator*()
public static unsafe implicit operator FirmwareUpdateMediator*(CComPtrMgd_003CMicrosoftZuneLibrary_003A_003AFirmwareUpdateMediator_003E obj)
{
return p;
return obj.p;
}
[SpecialName]
@@ -83,8 +82,8 @@ internal class CComPtrMgd_003CMicrosoftZuneLibrary_003A_003AFirmwareUpdateMediat
}
[return: MarshalAs(UnmanagedType.U1)]
public unsafe bool operator !()
public static unsafe bool operator !(CComPtrMgd_003CMicrosoftZuneLibrary_003A_003AFirmwareUpdateMediator_003E obj)
{
return (long)(nint)p == 0;
return (long)(nint)obj.p == 0;
}
}
@@ -38,7 +38,7 @@ namespace Microsoft.Zune.Configuration
}
}
public string ConfigurationPath => (!(m_basePath == (string)null)) ? string.Concat(m_basePath + "\\", m_instance) : m_instance;
public string ConfigurationPath => (!(m_basePath == null)) ? string.Concat(m_basePath + "\\", m_instance) : m_instance;
[SpecialName]
public unsafe event ConfigurationChangeEventHandler OnConfigurationChanged
@@ -399,11 +399,11 @@ namespace Microsoft.Zune.Configuration
//IL_0047: Expected I, but got I8
//IL_0072: Expected I, but got I8
DateTime dateTime = default(DateTime);
_FILETIME fILETIME;
FILETIME fILETIME;
*(int*)(&fILETIME) = 0;
// IL initblk instruction
Unsafe.InitBlockUnaligned(ref Unsafe.AddByteOffset(ref fILETIME, 4), 0, 4);
_FILETIME fILETIME2;
FILETIME fILETIME2;
*(long*)(&fILETIME2) = defaultValue.ToFileTimeUtc();
fixed (char* m_basePathPtr = m_basePath.ToCharArray())
{
@@ -424,8 +424,8 @@ namespace Microsoft.Zune.Configuration
_003F val = ptr2;
_003F val2 = ptr3;
_003F val3 = ptr4;
_FILETIME fILETIME3 = fILETIME2;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, HKEY*, ushort*, ushort*, ushort*, _FILETIME*, _FILETIME, int>)(*(ulong*)num2))((nint)intPtr, hHive, (ushort*)(nint)val, (ushort*)(nint)val2, (ushort*)(nint)val3, &fILETIME, fILETIME3);
FILETIME fILETIME3 = fILETIME2;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, HKEY*, ushort*, ushort*, ushort*, FILETIME*, FILETIME, int>)(*(ulong*)num2))((nint)intPtr, hHive, (ushort*)(nint)val, (ushort*)(nint)val2, (ushort*)(nint)val3, &fILETIME, fILETIME3);
if (num >= 0)
{
return DateTime.FromFileTimeUtc(*(long*)(&fILETIME));
@@ -441,7 +441,7 @@ namespace Microsoft.Zune.Configuration
{
//IL_002e: Expected I, but got I8
//IL_0056: Expected I, but got I8
_FILETIME fILETIME;
FILETIME fILETIME;
*(long*)(&fILETIME) = value.ToFileTimeUtc();
fixed (char* m_basePathPtr = m_basePath.ToCharArray())
{
@@ -464,8 +464,8 @@ namespace Microsoft.Zune.Configuration
_003F val = ptr2;
_003F val2 = ptr3;
_003F val3 = ptr4;
_FILETIME fILETIME2 = fILETIME;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, HKEY*, ushort*, ushort*, ushort*, _FILETIME, int>)(*(ulong*)num2))((nint)intPtr, hHive, (ushort*)(nint)val, (ushort*)(nint)val2, (ushort*)(nint)val3, fILETIME2);
FILETIME fILETIME2 = fILETIME;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, HKEY*, ushort*, ushort*, ushort*, FILETIME, int>)(*(ulong*)num2))((nint)intPtr, hHive, (ushort*)(nint)val, (ushort*)(nint)val2, (ushort*)(nint)val3, fILETIME2);
if (num < 0)
{
goto IL_005b;
@@ -509,7 +509,7 @@ namespace Microsoft.Zune.Configuration
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, HKEY*, ushort*, ushort*, ushort*, ushort*, uint*, ushort*, int>)(*(ulong*)num3))((nint)intPtr, hHive, ptr2, ptr3, ptr4, null, &num2, ptr5);
if (num >= 0)
{
ushort* ptr6 = (ushort*)Module.new_005B_005D((ulong)num2 * 2uL);
ushort* ptr6 = (ushort*)Module.new_005B_005D(num2 * 2uL);
num = (((long)(nint)ptr6 == 0) ? (-2147024882) : num);
if (num >= 0)
{
@@ -609,7 +609,7 @@ namespace Microsoft.Zune.Configuration
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, HKEY*, ushort*, ushort*, ushort*, ushort*, uint*, int>)(*(ulong*)num3))((nint)intPtr, hHive, ptr3, ptr4, ptr5, null, &num2);
if (num >= 0)
{
ptr2 = (ushort*)Module.new_005B_005D((ulong)num2 * 2uL);
ptr2 = (ushort*)Module.new_005B_005D(num2 * 2uL);
num = (((long)(nint)ptr2 == 0) ? (-2147024882) : num);
if (num >= 0)
{
@@ -627,7 +627,7 @@ namespace Microsoft.Zune.Configuration
{
string item = new string((char*)ptr6);
list.Add(item);
ptr6 = (ushort*)((long)(Module.lstrlenW(ptr6) + 1) * 2L + (nint)ptr6);
ptr6 = (ushort*)((Module.lstrlenW(ptr6) + 1) * 2L + (nint)ptr6);
}
while (*ptr6 != 0);
}
@@ -690,7 +690,7 @@ namespace Microsoft.Zune.Configuration
while (num3 < value.Count);
}
num2++;
ulong num4 = (ulong)num2 * 2uL;
ulong num4 = num2 * 2uL;
ushort* ptr2 = (ushort*)Module.new_005B_005D(num4);
if (ptr2 == null)
{
@@ -715,7 +715,7 @@ namespace Microsoft.Zune.Configuration
if (Module.wmemcpy_s(ptr3, num2, s, (ulong)length) == 0)
{
num2 += (uint)(-1 - length);
ptr3 = (ushort*)((long)length * 2L + (nint)ptr3 + 2);
ptr3 = (ushort*)(length * 2L + (nint)ptr3 + 2);
goto IL_00ee;
}
}
@@ -864,7 +864,7 @@ namespace Microsoft.Zune.Configuration
val3 = ptr4;
val4 = ptr5;
intPtr2 = (nint)value.LongLength;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, HKEY*, ushort*, ushort*, ushort*, byte*, uint, int>)(*(ulong*)num2))((nint)intPtr, hHive, (ushort*)(nint)val, (ushort*)(nint)val2, (ushort*)(nint)val3, (byte*)(nint)val4, (uint)(nint)intPtr2);
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, HKEY*, ushort*, ushort*, ushort*, byte*, uint, int>)(*(ulong*)num2))((nint)intPtr, hHive, (ushort*)(nint)val, (ushort*)(nint)val2, (ushort*)(nint)val3, (byte*)val4, (uint)(nint)intPtr2);
if (num < 0)
{
goto IL_0066;
@@ -13,7 +13,7 @@ namespace Microsoft.Zune.Configuration
global::IFileAssociationHandler* ptr = null;
try
{
int num = Module.ZuneLibraryExports_002ECreateNativeFileAssociationHandler((void**)(&ptr));
int num = Module.CreateNativeFileAssociationHandler((void**)(&ptr));
if (num >= 0)
{
fileAssociationHandlerWrapper = new FileAssociationHandlerWrapper(ptr);
@@ -36,7 +36,7 @@ namespace Microsoft.Zune.Configuration
int num2 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, global::FileAssociationInfo*, uint*, int>)(*(ulong*)(*(long*)pFileAssociationHandler + 24)))((nint)pFileAssociationHandler, null, &num);
if (num2 >= 0)
{
ptr = (global::FileAssociationInfo*)Module.new_005B_005D((ulong)num * 32uL);
ptr = (global::FileAssociationInfo*)Module.new_005B_005D(num * 32uL);
if (ptr == null)
{
num2 = -2147024882;
@@ -44,7 +44,7 @@ namespace Microsoft.Zune.Configuration
else
{
// IL initblk instruction
Unsafe.InitBlock(ptr, 0, (long)num * 32L);
*ptr = default;
pFileAssociationHandler = m_pFileAssociationHandler;
num2 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, global::FileAssociationInfo*, uint*, int>)(*(ulong*)(*(long*)pFileAssociationHandler + 24)))((nint)pFileAssociationHandler, ptr, &num);
if (num2 >= 0)
@@ -74,7 +74,7 @@ namespace Microsoft.Zune.Configuration
//IL_0039: Expected I, but got I8
//IL_005f: Expected I, but got I8
uint count = (uint)fileAssociationInfoList.Count;
global::FileAssociationInfo* ptr = (global::FileAssociationInfo*)Module.new_005B_005D((ulong)count * 32uL);
global::FileAssociationInfo* ptr = (global::FileAssociationInfo*)Module.new_005B_005D(count * 32uL);
int num;
if (ptr == null)
{
@@ -89,7 +89,7 @@ namespace Microsoft.Zune.Configuration
}
while (true)
{
num = FileInfoToStruct(fileAssociationInfoList[(int)num2], (global::FileAssociationInfo*)((long)num2 * 32L + (nint)ptr));
num = FileInfoToStruct(fileAssociationInfoList[(int)num2], (global::FileAssociationInfo*)(num2 * 32L + (nint)ptr));
if (num < 0)
{
break;
@@ -132,15 +132,15 @@ namespace Microsoft.Zune.Configuration
//IL_002c: Expected I8, but got I
//IL_0037: Expected I8, but got I
//IL_0045: Expected I8, but got I
fixed (char* fileAssocInfo.ExtensionPtr = fileAssocInfo.Extension.ToCharArray())
fixed (char* fileAssocInfoExtensionPtr = fileAssocInfo.Extension.ToCharArray())
{
ushort* ptr = (ushort*)fileAssocInfo.ExtensionPtr;
fixed (char* fileAssocInfo.ProgIdPtr = fileAssocInfo.ProgId.ToCharArray())
ushort* ptr = (ushort*)fileAssocInfoExtensionPtr;
fixed (char* fileAssocInfoProgIdPtr = fileAssocInfo.ProgId.ToCharArray())
{
ushort* ptr2 = (ushort*)fileAssocInfo.ProgIdPtr;
fixed (char* fileAssocInfo.DescriptionPtr = fileAssocInfo.Description.ToCharArray())
ushort* ptr2 = (ushort*)fileAssocInfoProgIdPtr;
fixed (char* fileAssocInfoDescriptionPtr = fileAssocInfo.Description.ToCharArray())
{
ushort* ptr3 = (ushort*)fileAssocInfo.DescriptionPtr;
ushort* ptr3 = (ushort*)fileAssocInfoDescriptionPtr;
*(long*)pFileAssocInfo = (nint)Module.SysAllocString(ptr);
*(long*)((ulong)(nint)pFileAssocInfo + 8uL) = (nint)Module.SysAllocString(ptr2);
ushort* ptr4 = Module.SysAllocString(ptr3);
@@ -202,16 +202,11 @@ namespace Microsoft.Zune.Configuration
{
_007EFileAssociationHandlerWrapper();
}
else
{
Finalize();
}
}
public sealed override void Dispose()
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
}
}
@@ -32,7 +32,7 @@ namespace Microsoft.Zune.Configuration
{
get
{
if (!(m_name == (string)null) && m_name.Length != 0)
if (!(m_name == null) && m_name.Length != 0)
{
return m_name;
}
@@ -47,11 +47,11 @@ namespace Microsoft.Zune.Configuration
m_tunerType = tunerType;
m_tunerRegisterType = tunerRegisterType;
m_tunerVersion = tunerVersion;
if (dateCreated == (string)null || !DateTime.TryParse(dateCreated, out m_dtCreated))
if (dateCreated == null || !DateTime.TryParse(dateCreated, out m_dtCreated))
{
m_dtCreated = DateTime.MinValue;
}
if (dateLastUsed == (string)null || !DateTime.TryParse(dateLastUsed, out m_dtLastUsed))
if (dateLastUsed == null || !DateTime.TryParse(dateLastUsed, out m_dtLastUsed))
{
m_dtLastUsed = DateTime.MinValue;
}
@@ -55,7 +55,7 @@ namespace Microsoft.Zune.Configuration
//IL_0034: Expected I, but got I8
IService* ptr = null;
int num = 0;
if (Module.GetSingleton((_GUID)Module.GUID_IService, (void**)(&ptr)) >= 0)
if (Module.GetSingleton(Module.GUID_IService, (void**)(&ptr)) >= 0)
{
IService* intPtr = ptr;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, int>)(*(ulong*)(*(long*)intPtr + 200)))((nint)intPtr);
@@ -107,7 +107,7 @@ namespace Microsoft.Zune.Configuration
//IL_0077: Expected I, but got I8
//IL_007b: Expected I, but got I8
IService* ptr = null;
int singleton = Module.GetSingleton((_GUID)Module.GUID_IService, (void**)(&ptr));
int singleton = Module.GetSingleton(Module.GUID_IService, (void**)(&ptr));
RefreshCallback* ptr2 = (RefreshCallback*)Module.@new(24uL);
RefreshCallback* ptr3;
try
@@ -136,7 +136,7 @@ namespace Microsoft.Zune.Configuration
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint>)(*(ulong*)(*(long*)intPtr2 + 16)))((nint)intPtr2);
ptr = null;
}
if (singleton < 0 && Module.WPP_GLOBAL_Control != Unsafe.AsPointer(ref Module.WPP_GLOBAL_Control) && ((uint)(*(int*)((ulong)(nint)Module.WPP_GLOBAL_Control + 156uL)) & (true ? 1u : 0u)) != 0 && (uint)(*(byte*)((ulong)(nint)Module.WPP_GLOBAL_Control + 153uL)) >= 5u)
if (singleton < 0 && Module.WPP_GLOBAL_Control != Unsafe.AsPointer(ref Module.WPP_GLOBAL_Control) && ((uint)(*(int*)((ulong)(nint)Module.WPP_GLOBAL_Control + 156uL)) & (true ? 1u : 0u)) != 0 && *(byte*)((ulong)(nint)Module.WPP_GLOBAL_Control + 153uL) >= 5u)
{
Module.WPP_SF_D(*(ulong*)((ulong)(nint)Module.WPP_GLOBAL_Control + 144uL), 10, (_GUID*)Unsafe.AsPointer(ref Module._003FA0x2af74624_002EWPP_RegisteredDevicesApi_cpp_Traceguids), (uint)singleton);
}
@@ -150,7 +150,7 @@ namespace Microsoft.Zune.Configuration
//IL_0090: Expected I, but got I8
//IL_0094: Expected I, but got I8
IService* ptr = null;
int singleton = Module.GetSingleton((_GUID)Module.GUID_IService, (void**)(&ptr));
int singleton = Module.GetSingleton(Module.GUID_IService, (void**)(&ptr));
DeregisterCallback* ptr2 = (DeregisterCallback*)Module.@new(24uL);
DeregisterCallback* ptr3;
try
@@ -192,7 +192,7 @@ namespace Microsoft.Zune.Configuration
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint>)(*(ulong*)(*(long*)intPtr2 + 16)))((nint)intPtr2);
ptr = null;
}
if (singleton < 0 && Module.WPP_GLOBAL_Control != Unsafe.AsPointer(ref Module.WPP_GLOBAL_Control) && ((uint)(*(int*)((ulong)(nint)Module.WPP_GLOBAL_Control + 156uL)) & (true ? 1u : 0u)) != 0 && (uint)(*(byte*)((ulong)(nint)Module.WPP_GLOBAL_Control + 153uL)) >= 5u)
if (singleton < 0 && Module.WPP_GLOBAL_Control != Unsafe.AsPointer(ref Module.WPP_GLOBAL_Control) && ((uint)(*(int*)((ulong)(nint)Module.WPP_GLOBAL_Control + 156uL)) & (true ? 1u : 0u)) != 0 && *(byte*)((ulong)(nint)Module.WPP_GLOBAL_Control + 153uL) >= 5u)
{
Module.WPP_SF_D(*(ulong*)((ulong)(nint)Module.WPP_GLOBAL_Control + 144uL), 11, (_GUID*)Unsafe.AsPointer(ref Module._003FA0x2af74624_002EWPP_RegisteredDevicesApi_cpp_Traceguids), (uint)singleton);
}
@@ -2,6 +2,11 @@ namespace Microsoft.Zune.Configuration
{
public class VersionInfo
{
public static string BuildNumber => "4.8.2345.0";
public static string BuildNumber =>
#if ZUNE_5
"5.0.0000.0";
#else
"4.8.2345.0";
#endif
}
}
@@ -10,7 +10,7 @@ namespace Microsoft.Zune.ErrorMapperApi
ushort* ptr = null;
ushort* ptr2 = null;
int hr = 0;
if (Module.ZuneLibraryExports_002EGetMappedErrorDescriptionAndUrl(hrOrig, eCondition, &hr, &ptr, &ptr2) < 0)
if (Module.GetMappedErrorDescriptionAndUrl(hrOrig, eCondition, &hr, &ptr, &ptr2) < 0)
{
errorMapperResult.Hr = hrOrig;
errorMapperResult.Description = "";
@@ -721,7 +721,7 @@ namespace Microsoft.Zune.Messaging
//IL_0071: Expected I, but got I8
//IL_0071: Expected I, but got I8
bool result = false;
if (m_pMessaging != null && strProfileImageResource != (string)null && strProfileImageUrl != (string)null)
if (m_pMessaging != null && strProfileImageResource != null && strProfileImageUrl != null)
{
CComPtrNtv_003CIMessagingCallback_003E cComPtrNtv_003CIMessagingCallback_003E;
*(long*)(&cComPtrNtv_003CIMessagingCallback_003E) = 0L;
@@ -800,7 +800,7 @@ namespace Microsoft.Zune.Messaging
//IL_0090: Expected I, but got I8
//IL_0090: Expected I, but got I8
bool result = false;
if (m_pMessaging != null && profileImage != null && strProfileImageUrl != (string)null)
if (m_pMessaging != null && profileImage != null && strProfileImageUrl != null)
{
int num = 0;
CComPtrNtv_003CIMessagingCallback_003E cComPtrNtv_003CIMessagingCallback_003E;
@@ -66,7 +66,7 @@ namespace Microsoft.Zune.Messaging
return -2147467261;
}
IMSMediaSchemaPropertyList* ptr = null;
int num = Module.ZuneLibraryExports_002ECreatePropertySetList((_GUID*)Unsafe.AsPointer(ref Module.ID_MS_MEDIA_SCHEMA_PLAYLIST), 3229617665u, &ptr);
int num = Module.CreatePropertySetList((_GUID*)Unsafe.AsPointer(ref Module.ID_MS_MEDIA_SCHEMA_PLAYLIST), 3229617665u, &ptr);
if (num >= 0)
{
num = AddTracksToPropList(ptr);
@@ -74,20 +74,20 @@ namespace Microsoft.Zune.Messaging
IMSMediaSchemaPropertySet* ptr2 = null;
if (num >= 0)
{
num = Module.ZuneLibraryExports_002ECreatePropertySet((_GUID*)Unsafe.AsPointer(ref Module.ID_MS_MEDIA_SCHEMA_PLAYLIST), 3229617665u, &ptr2);
num = Module.CreatePropertySet((_GUID*)Unsafe.AsPointer(ref Module.ID_MS_MEDIA_SCHEMA_PLAYLIST), 3229617665u, &ptr2);
}
fixed (char* m_titlePtr = m_title.ToCharArray())
{
ushort* ptr3 = (ushort*)m_titlePtr;
if (num >= 0)
{
CComPropVariant cComPropVariant;
PROPVARIANT cComPropVariant;
// IL initblk instruction
Unsafe.InitBlock(ref cComPropVariant, 0, 24);
Unsafe.InitBlock(&cComPropVariant, 0, 24);
try
{
*(short*)(&cComPropVariant) = 8;
Unsafe.As<CComPropVariant, long>(ref Unsafe.AddByteOffset(ref cComPropVariant, 8)) = (nint)Module.SysAllocString(ptr3);
Unsafe.As<PROPVARIANT, long>(ref Unsafe.AddByteOffset(ref cComPropVariant, 8)) = (nint)Module.SysAllocString(ptr3);
tagPROPVARIANT tagPROPVARIANT = (tagPROPVARIANT)cComPropVariant;
IMSMediaSchemaPropertySet* intPtr = ptr2;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, tagPROPVARIANT, int>)(*(ulong*)(*(long*)ptr2 + 56)))((nint)intPtr, 16777217u, tagPROPVARIANT);
@@ -95,7 +95,7 @@ namespace Microsoft.Zune.Messaging
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<CComPropVariant*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant);
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<PROPVARIANT*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant);
throw;
}
Module.CComPropVariant_002EClear(&cComPropVariant);
@@ -105,13 +105,13 @@ namespace Microsoft.Zune.Messaging
ushort* ptr4 = (ushort*)m_authorPtr;
if (num >= 0)
{
CComPropVariant cComPropVariant2;
PROPVARIANT cComPropVariant2;
// IL initblk instruction
Unsafe.InitBlock(ref cComPropVariant2, 0, 24);
Unsafe.InitBlock(&cComPropVariant2, 0, 24);
try
{
*(short*)(&cComPropVariant2) = 8;
Unsafe.As<CComPropVariant, long>(ref Unsafe.AddByteOffset(ref cComPropVariant2, 8)) = (nint)Module.SysAllocString(ptr4);
Unsafe.As<PROPVARIANT, long>(ref Unsafe.AddByteOffset(ref cComPropVariant2, 8)) = (nint)Module.SysAllocString(ptr4);
tagPROPVARIANT tagPROPVARIANT2 = (tagPROPVARIANT)cComPropVariant2;
IMSMediaSchemaPropertySet* intPtr2 = ptr2;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, tagPROPVARIANT, int>)(*(ulong*)(*(long*)ptr2 + 56)))((nint)intPtr2, 16777219u, tagPROPVARIANT2);
@@ -119,14 +119,14 @@ namespace Microsoft.Zune.Messaging
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<CComPropVariant*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant2);
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<PROPVARIANT*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant2);
throw;
}
Module.CComPropVariant_002EClear(&cComPropVariant2);
}
CComPropVariant cComPropVariant3;
PROPVARIANT cComPropVariant3;
// IL initblk instruction
Unsafe.InitBlock(ref cComPropVariant3, 0, 24);
Unsafe.InitBlock(&cComPropVariant3, 0, 24);
try
{
if (num < 0)
@@ -134,7 +134,7 @@ namespace Microsoft.Zune.Messaging
goto IL_0144;
}
*(short*)(&cComPropVariant3) = 13;
Unsafe.As<CComPropVariant, long>(ref Unsafe.AddByteOffset(ref cComPropVariant3, 8)) = (nint)ptr;
Unsafe.As<PROPVARIANT, long>(ref Unsafe.AddByteOffset(ref cComPropVariant3, 8)) = (nint)ptr;
tagPROPVARIANT tagPROPVARIANT3 = (tagPROPVARIANT)cComPropVariant3;
IMSMediaSchemaPropertySet* intPtr3 = ptr2;
num = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, tagPROPVARIANT, int>)(*(ulong*)(*(long*)ptr2 + 56)))((nint)intPtr3, 3229617665u, tagPROPVARIANT3);
@@ -163,7 +163,7 @@ namespace Microsoft.Zune.Messaging
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<CComPropVariant*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant3);
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<PROPVARIANT*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant3);
throw;
}
Module.CComPropVariant_002EClear(&cComPropVariant3);
@@ -203,15 +203,15 @@ namespace Microsoft.Zune.Messaging
object property = dataProviderObject.GetProperty("ZuneMediaId");
if (property != null)
{
gUID = Module.GuidToGUID((Guid)property);
gUID = (Guid)property;
}
string text = dataProviderObject.GetProperty("Title") as string;
object s = ((!(text == (string)null)) ? text : "");
while (true)
{
fixed (char* (string)sPtr = (string)s.ToCharArray())
fixed (char* sPtr = ((string)s).ToCharArray())
{
ushort* ptr = (ushort*)(string)sPtr;
ushort* ptr = (ushort*)sPtr;
while (true)
{
if (num2 < m_tracks.Count)
@@ -233,7 +233,7 @@ namespace Microsoft.Zune.Messaging
property = dataProviderObject.GetProperty("ZuneMediaId");
if (property != null)
{
gUID = Module.GuidToGUID((Guid)property);
gUID = (Guid)property;
}
text = dataProviderObject.GetProperty("Title") as string;
s = ((!(text == (string)null)) ? text : "");
@@ -267,7 +267,7 @@ namespace Microsoft.Zune.Messaging
}
}
public sealed override void Dispose()
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
@@ -43,16 +43,14 @@ namespace Microsoft.Zune.Playlist
bool flag = true;
do
{
CComPropVariant cComPropVariant;
// IL initblk instruction
Unsafe.InitBlock(ref cComPropVariant, 0, 24);
PROPVARIANT cComPropVariant = default;
try
{
IAutoPlaylistRules* intPtr = ptr;
EMediaTypes type = m_type;
uint atom;
EAutoPlaylistRuleOperators op;
int num3 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EMediaTypes, uint, uint, uint*, EAutoPlaylistRuleOperators*, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr + 40)))((nint)intPtr, type, (uint)num, (uint)num2, &atom, &op, (PROPVARIANT)(&cComPropVariant));
int num3 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EMediaTypes, uint, uint, uint*, EAutoPlaylistRuleOperators*, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr + 40)))((System.nint)intPtr, (EMediaTypes)type, (uint)(uint)num, (uint)(uint)num2, (uint*)&atom, (EAutoPlaylistRuleOperators*)&op, (PROPVARIANT)cComPropVariant);
if (num3 >= 0)
{
if (num3 == 1)
@@ -69,7 +67,7 @@ namespace Microsoft.Zune.Playlist
}
else
{
CacheCriterion(num, (int)atom, (PROPVARIANT)(&cComPropVariant), op);
CacheCriterion(num, (int)atom, cComPropVariant, op);
num2++;
}
goto IL_00b3;
@@ -78,7 +76,7 @@ namespace Microsoft.Zune.Playlist
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<CComPropVariant*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant);
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<PROPVARIANT*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant);
throw;
}
Module.CComPropVariant_002EClear(&cComPropVariant);
@@ -88,15 +86,13 @@ namespace Microsoft.Zune.Playlist
}
while (flag);
int num4 = 0;
CComPropVariant cComPropVariant2;
// IL initblk instruction
Unsafe.InitBlock(ref cComPropVariant2, 0, 24);
PROPVARIANT cComPropVariant2 = default;
int num5;
uint atom2;
try
{
IAutoPlaylistRules* intPtr2 = ptr;
num5 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, uint*, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr + 72)))((nint)intPtr2, 0u, &atom2, (PROPVARIANT)(&cComPropVariant2));
num5 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, uint*, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr + 72)))((System.nint)intPtr2, (uint)0u, (uint*)&atom2, (PROPVARIANT)cComPropVariant2);
if (num5 < 0)
{
goto IL_0160;
@@ -105,7 +101,7 @@ namespace Microsoft.Zune.Playlist
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<CComPropVariant*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant2);
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<PROPVARIANT*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant2);
throw;
}
while (true)
@@ -116,24 +112,23 @@ namespace Microsoft.Zune.Playlist
{
break;
}
CacheCriterion(0, (int)atom2, (PROPVARIANT)(&cComPropVariant2), (EAutoPlaylistRuleOperators)8);
CacheCriterion(0, (int)atom2, cComPropVariant2, (EAutoPlaylistRuleOperators)8);
num4++;
goto IL_0126;
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<CComPropVariant*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant2);
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<PROPVARIANT*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant2);
throw;
}
IL_0126:
Module.CComPropVariant_002EClear(&cComPropVariant2);
// IL initblk instruction
Unsafe.InitBlock(ref cComPropVariant2, 0, 24);
cComPropVariant2 = default;
try
{
IAutoPlaylistRules* intPtr3 = ptr;
num5 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, uint*, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr + 72)))((nint)intPtr3, (uint)num4, &atom2, (PROPVARIANT)(&cComPropVariant2));
num5 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, uint*, PROPVARIANT, int>)(*(ulong*)(*(long*)ptr + 72)))((System.nint)intPtr3, (uint)(uint)num4, (uint*)&atom2, (PROPVARIANT)cComPropVariant2);
if (num5 >= 0)
{
continue;
@@ -142,7 +137,7 @@ namespace Microsoft.Zune.Playlist
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<CComPropVariant*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant2);
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<PROPVARIANT*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant2);
throw;
}
break;
@@ -182,22 +177,18 @@ namespace Microsoft.Zune.Playlist
m_currentRuleSetGroup = 0;
IAutoPlaylistRules* pAutoPlaylistRules = m_pAutoPlaylistRules;
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, int>)(*(ulong*)(*(long*)pAutoPlaylistRules + 24)))((nint)pAutoPlaylistRules);
CComPropVariant cComPropVariant;
// IL initblk instruction
Unsafe.InitBlock(ref cComPropVariant, 0, 24);
try
{
*(short*)(&cComPropVariant) = 3;
Unsafe.As<CComPropVariant, short>(ref Unsafe.AddByteOffset(ref cComPropVariant, 8)) = 1;
PROPVARIANT cComPropVariant = new(1, VarEnum.VT_I4);
IAutoPlaylistRules* pAutoPlaylistRules2 = m_pAutoPlaylistRules;
EMediaTypes type = m_type;
int currentRuleSetGroup = m_currentRuleSetGroup;
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EMediaTypes, uint, uint, EAutoPlaylistRuleOperators, PROPVARIANT, int>)(*(ulong*)(*(long*)pAutoPlaylistRules2 + 32)))((nint)pAutoPlaylistRules2, type, (uint)currentRuleSetGroup, 204u, (EAutoPlaylistRuleOperators)1, (PROPVARIANT)(&cComPropVariant));
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EMediaTypes, uint, uint, EAutoPlaylistRuleOperators, PROPVARIANT, int>)(*(ulong*)(*(long*)pAutoPlaylistRules2 + 32)))((System.nint)pAutoPlaylistRules2, (EMediaTypes)type, (uint)(uint)currentRuleSetGroup, (uint)204u, (EAutoPlaylistRuleOperators)(EAutoPlaylistRuleOperators)1, (PROPVARIANT)cComPropVariant);
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<CComPropVariant*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant);
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<PROPVARIANT*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant);
throw;
}
Module.CComPropVariant_002EClear(&cComPropVariant);
@@ -208,26 +199,23 @@ namespace Microsoft.Zune.Playlist
//IL_000f: Expected I4, but got I8
//IL_0041: Expected I, but got I8
int num = ZuneQueryList.AtomNameToAtom(atomName);
CComPropVariant cComPropVariant;
// IL initblk instruction
Unsafe.InitBlock(ref cComPropVariant, 0, 24);
HRESULT result;
try
{
int num2 = ZuneQueryList.ConvertTypeToPropVariant(null, value, (PROPVARIANT)(&cComPropVariant));
int num2 = ZuneQueryList.ConvertTypeToPropVariant(null, value, out var cComPropVariant);
if (num2 >= 0)
{
IAutoPlaylistRules* pAutoPlaylistRules = m_pAutoPlaylistRules;
EMediaTypes type = m_type;
int currentRuleSetGroup = m_currentRuleSetGroup;
num2 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EMediaTypes, uint, uint, EAutoPlaylistRuleOperators, PROPVARIANT, int>)(*(ulong*)(*(long*)pAutoPlaylistRules + 32)))((nint)pAutoPlaylistRules, type, (uint)currentRuleSetGroup, (uint)num, (EAutoPlaylistRuleOperators)op, (PROPVARIANT)(&cComPropVariant));
num2 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, EMediaTypes, uint, uint, EAutoPlaylistRuleOperators, PROPVARIANT, int>)(*(ulong*)(*(long*)pAutoPlaylistRules + 32)))((System.nint)pAutoPlaylistRules, (EMediaTypes)type, (uint)(uint)currentRuleSetGroup, (uint)(uint)num, (EAutoPlaylistRuleOperators)(EAutoPlaylistRuleOperators)op, (PROPVARIANT)cComPropVariant);
}
result = num2;
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<CComPropVariant*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant);
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<PROPVARIANT*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant);
throw;
}
Module.CComPropVariant_002EClear(&cComPropVariant);
@@ -270,24 +258,21 @@ namespace Microsoft.Zune.Playlist
//IL_000f: Expected I4, but got I8
//IL_0034: Expected I, but got I8
int num = ZuneQueryList.AtomNameToAtom(atomName);
CComPropVariant cComPropVariant;
// IL initblk instruction
Unsafe.InitBlock(ref cComPropVariant, 0, 24);
HRESULT result;
try
{
int num2 = ZuneQueryList.ConvertTypeToPropVariant(null, value, (PROPVARIANT)(&cComPropVariant));
int num2 = ZuneQueryList.ConvertTypeToPropVariant(null, value, out var cComPropVariant);
if (num2 >= 0)
{
IAutoPlaylistRules* pAutoPlaylistRules = m_pAutoPlaylistRules;
num2 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, PROPVARIANT, int>)(*(ulong*)(*(long*)pAutoPlaylistRules + 64)))((nint)pAutoPlaylistRules, (uint)num, (PROPVARIANT)(&cComPropVariant));
num2 = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, uint, PROPVARIANT, int>)(*(ulong*)(*(long*)pAutoPlaylistRules + 64)))((nint)pAutoPlaylistRules, (uint)(uint)num, (PROPVARIANT)cComPropVariant);
}
result = num2;
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<CComPropVariant*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant);
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<PROPVARIANT*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant);
throw;
}
Module.CComPropVariant_002EClear(&cComPropVariant);
@@ -342,7 +327,7 @@ namespace Microsoft.Zune.Playlist
}
else
{
stringBuilder.Append(",");
stringBuilder.Append(',');
stringBuilder.Append(value);
}
num++;
@@ -395,16 +380,16 @@ namespace Microsoft.Zune.Playlist
private unsafe static object PropVariantToObject(PROPVARIANT pvtValue)
{
Type type;
switch (*(ushort*)pvtValue)
switch (pvtValue.vt)
{
case 8:
case VARTYPE.VT_BSTR:
type = typeof(string);
break;
case 3:
case VARTYPE.VT_I4:
type = typeof(int);
break;
case 0:
case 1:
case VARTYPE.VT_NULL:
case VARTYPE.VT_EMPTY:
return null;
default:
type = null;
@@ -423,16 +408,11 @@ namespace Microsoft.Zune.Playlist
{
_007EAutoPlaylistBuilder();
}
else
{
Finalize();
}
}
public sealed override void Dispose()
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
}
}
@@ -2,5 +2,5 @@ using ZuneUI;
namespace Microsoft.Zune.Playlist
{
public delegate void PlaylistAsyncOperationCompleted(HRESULT);
public delegate void PlaylistAsyncOperationCompleted(HRESULT hr);
}
@@ -60,10 +60,7 @@ namespace Microsoft.Zune.Playlist
public unsafe HRESULT CreatePlaylist(string title, string author, [In] ValueType serviceMediaId, CreatePlaylistOption options, out int playlistId)
{
//IL_0097: Expected I4, but got I8
//IL_00e8: Incompatible stack types: I8 vs Ref
//IL_0115: Expected I, but got I8
//IL_0115: Expected I, but got I8
playlistId = -1;
bool flag = (options & CreatePlaylistOption.PrivatePlaylist) > CreatePlaylistOption.None;
bool flag2 = (options & CreatePlaylistOption.AutoPlaylist) > CreatePlaylistOption.None;
bool flag3 = (options & CreatePlaylistOption.SyncRule) > CreatePlaylistOption.None;
@@ -90,7 +87,7 @@ namespace Microsoft.Zune.Playlist
ushort* ptr3 = (ushort*)authorPtr;
try
{
EPlaylistCreateConflictAction ePlaylistCreateConflictAction = (EPlaylistCreateConflictAction)0;
EPlaylistCreateConflictAction ePlaylistCreateConflictAction = 0;
if (flag5)
{
ePlaylistCreateConflictAction = (EPlaylistCreateConflictAction)2;
@@ -105,7 +102,7 @@ namespace Microsoft.Zune.Playlist
Unsafe.InitBlockUnaligned(ref Unsafe.AddByteOffset(ref gUID, 4), 0, 12);
if (serviceMediaId != null)
{
gUID = Module.GuidToGUID((Guid)serviceMediaId);
gUID = (Guid)serviceMediaId;
}
bool flag6 = ((!(flag3 || flag)) ? true : false);
EPlaylistType ePlaylistType;
@@ -122,7 +119,7 @@ namespace Microsoft.Zune.Playlist
}
else
{
EPlaylistType ePlaylistType3 = (flag2 ? ((EPlaylistType)1) : ((EPlaylistType)0));
EPlaylistType ePlaylistType3 = (flag2 ? ((EPlaylistType)1) : 0);
ePlaylistType2 = ePlaylistType3;
}
ePlaylistType = ePlaylistType2;
@@ -355,21 +352,21 @@ namespace Microsoft.Zune.Playlist
ushort* ptr = (ushort*)candidateTitlePtr;
try
{
CComPropVariant cComPropVariant;
PROPVARIANT cComPropVariant;
// IL initblk instruction
Unsafe.InitBlock(ref cComPropVariant, 0, 24);
Unsafe.InitBlock(&cComPropVariant, 0, 24);
try
{
long num = *(long*)m_pPlaylistManager + 136;
IPlaylistManager* pPlaylistManager = m_pPlaylistManager;
int num2;
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, int*, PROPVARIANT, int>)(*(ulong*)num))((nint)pPlaylistManager, ptr, &num2, (PROPVARIANT)(&cComPropVariant));
result = new string((char*)Unsafe.As<CComPropVariant, ulong>(ref Unsafe.AddByteOffset(ref cComPropVariant, 8)));
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, ushort*, int*, PROPVARIANT, int>)(*(ulong*)num))((System.nint)pPlaylistManager, (ushort*)ptr, (int*)&num2, (PROPVARIANT)cComPropVariant);
result = new string((char*)Unsafe.As<PROPVARIANT, ulong>(ref Unsafe.AddByteOffset(ref cComPropVariant, 8)));
}
catch
{
//try-fault
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<CComPropVariant*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant);
Module.___CxxCallUnwindDtor((delegate*<void*, void>)(delegate*<PROPVARIANT*, void>)(&Module.CComPropVariant_002E_007Bdtor_007D), &cComPropVariant);
throw;
}
Module.CComPropVariant_002EClear(&cComPropVariant);
@@ -388,6 +385,7 @@ namespace Microsoft.Zune.Playlist
public unsafe HRESULT GetPlaylistByServiceMediaId(Guid serviceMediaId, out int playlistId)
{
//IL_0034: Expected I, but got I8
playlistId = -1;
int hr;
if (m_pPlaylistManager == null)
{
@@ -396,7 +394,7 @@ namespace Microsoft.Zune.Playlist
else
{
int num = -1;
_GUID gUID = Module.GuidToGUID(serviceMediaId);
_GUID gUID = serviceMediaId;
IPlaylistManager* pPlaylistManager = m_pPlaylistManager;
hr = ((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, _GUID, int*, int>)(*(ulong*)(*(long*)pPlaylistManager + 168)))((nint)pPlaylistManager, gUID, &num);
playlistId = num;
@@ -406,7 +404,7 @@ namespace Microsoft.Zune.Playlist
public unsafe HRESULT GetAutoPlaylistSchema(int playlistId, out EMediaTypes schema)
{
//IL_0033: Expected I, but got I8
schema = EMediaTypes.eMediaTypeInvalid;
EMediaTypes eMediaTypes = EMediaTypes.eMediaTypeInvalid;
int num;
if (playlistId < 0)
@@ -460,7 +458,7 @@ namespace Microsoft.Zune.Playlist
{
//IL_0009: Expected I, but got I8
IPlaylistManager* pPlaylistManager = null;
int singleton = Module.GetSingleton((_GUID)Module._GUID_c2d9122b_f648_4b95_92fc_11f2e7f326d7, (void**)(&pPlaylistManager));
int singleton = Module.GetSingleton(Module.GUID_IPlaylistManager, (void**)(&pPlaylistManager));
if (singleton >= 0)
{
m_pPlaylistManager = pPlaylistManager;
@@ -482,14 +480,13 @@ namespace Microsoft.Zune.Playlist
}
finally
{
base.Finalize();
//base.Finalize();
}
}
public sealed override void Dispose()
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
~PlaylistManager()
@@ -31,7 +31,7 @@ namespace Microsoft.Zune.QuickMix
*(sbyte*)(&qUICK_MIX_STATUS_INFO) = 0;
// IL initblk instruction
Unsafe.InitBlockUnaligned(ref Unsafe.AddByteOffset(ref qUICK_MIX_STATUS_INFO, 1), 0, 15);
int singleton = Module.GetSingleton((_GUID)Module._GUID_d69e22ae_7e21_4959_be6e_14462eb96f64, (void**)(&cComPtrNtv_003CIQuickMixManager_003E));
int singleton = Module.GetSingleton(Module.GUID_IQuickMixManager, (void**)(&cComPtrNtv_003CIQuickMixManager_003E));
if (singleton >= 0)
{
long num = *(long*)(&cComPtrNtv_003CIQuickMixManager_003E);
@@ -96,7 +96,7 @@ namespace Microsoft.Zune.QuickMix
*(sbyte*)(&qUICK_MIX_STATUS_INFO) = 0;
// IL initblk instruction
Unsafe.InitBlockUnaligned(ref Unsafe.AddByteOffset(ref qUICK_MIX_STATUS_INFO, 1), 0, 15);
if (Module.GetSingleton((_GUID)Module._GUID_d69e22ae_7e21_4959_be6e_14462eb96f64, (void**)(&cComPtrNtv_003CIQuickMixManager_003E)) >= 0)
if (Module.GetSingleton(Module.GUID_IQuickMixManager, (void**)(&cComPtrNtv_003CIQuickMixManager_003E)) >= 0)
{
long num = *(long*)(&cComPtrNtv_003CIQuickMixManager_003E);
((delegate* unmanaged[Cdecl, Cdecl]<IntPtr, QUICK_MIX_STATUS_INFO*, int>)(*(ulong*)(*(long*)(*(ulong*)(&cComPtrNtv_003CIQuickMixManager_003E)) + 56)))((nint)num, &qUICK_MIX_STATUS_INFO);
@@ -131,10 +131,10 @@ namespace Microsoft.Zune.QuickMix
*(long*)(&cComPtrNtv_003CIQuickMixSession_003E) = 0L;
try
{
int num = Module.GetSingleton((_GUID)Module._GUID_d69e22ae_7e21_4959_be6e_14462eb96f64, (void**)(&cComPtrNtv_003CIQuickMixManager_003E));
int num = Module.GetSingleton(Module.GUID_IQuickMixManager, (void**)(&cComPtrNtv_003CIQuickMixManager_003E));
if (num >= 0)
{
_GUID gUID = Module.GuidToGUID(serviceMediaId);
_GUID gUID = serviceMediaId;
fixed (char* mediaTitlePtr = mediaTitle.ToCharArray())
{
ushort* ptr = (ushort*)mediaTitlePtr;
@@ -190,7 +190,7 @@ namespace Microsoft.Zune.QuickMix
*(long*)(&cComPtrNtv_003CIQuickMixSession_003E) = 0L;
try
{
int num = Module.GetSingleton((_GUID)Module._GUID_d69e22ae_7e21_4959_be6e_14462eb96f64, (void**)(&cComPtrNtv_003CIQuickMixManager_003E));
int num = Module.GetSingleton(Module.GUID_IQuickMixManager, (void**)(&cComPtrNtv_003CIQuickMixManager_003E));
if (num >= 0)
{
fixed (int* ptr = &seedMediaIds[0])
@@ -268,7 +268,7 @@ namespace Microsoft.Zune.QuickMix
num2 = num;
if (num >= 0)
{
num2 = Module.GetSingleton((_GUID)Module._GUID_d69e22ae_7e21_4959_be6e_14462eb96f64, (void**)(&cComPtrNtv_003CIQuickMixManager_003E));
num2 = Module.GetSingleton(Module.GUID_IQuickMixManager, (void**)(&cComPtrNtv_003CIQuickMixManager_003E));
if (num2 >= 0)
{
QuickMixCallbackProxy* ptr3 = (QuickMixCallbackProxy*)((ptr2 == null) ? 0 : ((ulong)(nint)ptr2 + 8uL));
@@ -232,7 +232,7 @@ namespace Microsoft.Zune.QuickMix
}
else
{
ePlaylistCreateConflictAction = (EPlaylistCreateConflictAction)0;
ePlaylistCreateConflictAction = 0;
}
IQuickMixSession* p = m_spSession.p;
long num3 = *(long*)p + 72;

Some files were not shown because too many files have changed in this diff Show More