MarshalAlloc.cpp 864 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #include "il2cpp-config.h"
  2. #if IL2CPP_TARGET_WINRT || IL2CPP_TARGET_XBOXONE
  3. #include "os/MarshalAlloc.h"
  4. #include "os/Win32/WindowsHeaders.h"
  5. #include "Objbase.h"
  6. namespace il2cpp
  7. {
  8. namespace os
  9. {
  10. void* MarshalAlloc::Allocate(size_t size)
  11. {
  12. return ::CoTaskMemAlloc(size);
  13. }
  14. void* MarshalAlloc::ReAlloc(void* ptr, size_t size)
  15. {
  16. return ::CoTaskMemRealloc(ptr, size);
  17. }
  18. void MarshalAlloc::Free(void* ptr)
  19. {
  20. ::CoTaskMemFree(ptr);
  21. }
  22. void* MarshalAlloc::AllocateHGlobal(size_t size)
  23. {
  24. return ::CoTaskMemAlloc(size);
  25. }
  26. void* MarshalAlloc::ReAllocHGlobal(void* ptr, size_t size)
  27. {
  28. return ::CoTaskMemRealloc(ptr, size);
  29. }
  30. void MarshalAlloc::FreeHGlobal(void* ptr)
  31. {
  32. ::CoTaskMemFree(ptr);
  33. }
  34. } /* namespace os */
  35. } /* namespace il2cpp*/
  36. #endif